Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 通过在xaml中设置属性动态更改边框背景_Wpf_Xaml - Fatal编程技术网

Wpf 通过在xaml中设置属性动态更改边框背景

Wpf 通过在xaml中设置属性动态更改边框背景,wpf,xaml,Wpf,Xaml,我试图动态更改名为“Brush2”的边框背景属性,但出现以下错误 无法将类型为“System.Windows.Media.Color”的对象强制转换为类型 “System.Windows.Media.Brush” #7F605F5F #7F7E7E7E #7FFDFD #7fffff #BFFFFFFF #F2FFFFFF #FF6096E5 #FF9B7C35 #FFB0BAA1 #7F60605F 白色 您需要做的是将笔刷设置为类似solidcolorbrush对象的对象 构造函数接受一个

我试图动态更改名为“Brush2”的边框背景属性,但出现以下错误

无法将类型为“System.Windows.Media.Color”的对象强制转换为类型 “System.Windows.Media.Brush”


#7F605F5F
#7F7E7E7E
#7FFDFD
#7fffff
#BFFFFFFF
#F2FFFFFF
#FF6096E5
#FF9B7C35
#FFB0BAA1
#7F60605F
白色

您需要做的是将笔刷设置为类似solidcolorbrush对象的对象


构造函数接受一个颜色对象。

您需要做的是将笔刷设置为类似solidcolorbrush对象的对象


构造函数接受一个颜色对象。

以下代码可以工作,但我必须这样做:

Uri uri2 = new Uri("/Resources/DayModeTab2.xaml", UriKind.Relative);
ResourceDictionary resDict2 = Application.LoadComponent(uri2) as ResourceDictionary;

//Make some changes
MobileApp.Get().Resources.MergedDictionaries.Add(resDict2);
而且我糟糕的命名方案也导致了冲突,因为我在2个xaml文件中使用了0

<Border x:Name="BorderGlass" BorderThickness="3" CornerRadius="5,5,0,0" >
  <Border.Background>
    <SolidColorBrush Color="{DynamicResource Color2}" />
   </Border.Background>
<Border.BorderBrush>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
  <GradientStop Color="{DynamicResource Brush3}" Offset="0"/>
  <GradientStop Color="{DynamicResource Brush4}" Offset="0.401"/>
  <GradientStop Color="{DynamicResource Brush5}" Offset="0.254"/>
</LinearGradientBrush>
</Border.BorderBrush>
</Border>

以下代码有效,但我必须这样做:

Uri uri2 = new Uri("/Resources/DayModeTab2.xaml", UriKind.Relative);
ResourceDictionary resDict2 = Application.LoadComponent(uri2) as ResourceDictionary;

//Make some changes
MobileApp.Get().Resources.MergedDictionaries.Add(resDict2);
而且我糟糕的命名方案也导致了冲突,因为我在2个xaml文件中使用了0

<Border x:Name="BorderGlass" BorderThickness="3" CornerRadius="5,5,0,0" >
  <Border.Background>
    <SolidColorBrush Color="{DynamicResource Color2}" />
   </Border.Background>
<Border.BorderBrush>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
  <GradientStop Color="{DynamicResource Brush3}" Offset="0"/>
  <GradientStop Color="{DynamicResource Brush4}" Offset="0.401"/>
  <GradientStop Color="{DynamicResource Brush5}" Offset="0.254"/>
</LinearGradientBrush>
</Border.BorderBrush>
</Border>


我正试图用这段代码来实现这一点:我正试图用这段代码来实现这一点:这是非常糟糕的做法。你的颜色结构不应该被称为“刷”。你遇到的真正问题是,你试图为需要画笔的东西指定一个颜色结构(你认为它是画笔,因为它被命名为画笔)。这是非常糟糕的做法。你的颜色结构不应该被称为“刷”。您遇到的真正问题是,您试图将颜色结构(您认为它是笔刷,因为它被命名为笔刷)指定给需要笔刷的对象。