如何通过c#中的代码更改wpf中的资源
本文关键字:wpf 资源 代码 何通过 | 更新日期: 2023-09-27 18:28:47
拥有下一个XAML代码
<Window.Resources >
<ImageBrush x:Key="tile" ImageSource="afraid.png"
Opacity=" 20" TileMode="Tile"
ViewportUnits="Absolute"
Viewport=" 0,0,32,32"
></ImageBrush>
</Window.Resources>
我想在运行期间通过c#代码更改图像
我有下一个代码来做这件事,但代码不起作用&我不知道原因:
ImageBrush img = ( ImageBrush )this.FindResource( "tile" );
ImageSourceConverter conv = new ImageSourceConverter();
ImageSource src = ( ImageSource )conv.ConvertFromString( "mad.png" );
img.ImageSource = src;
请参考此答案。
试试这个,从文件中创建一个BitmapImage
,并将其设置为ImageBrush的ImageSource
。
ImageBrush img = (ImageBrush)this.FindResource("tile");
//change the imagesource in runtime,
img.ImageSource = new BitmapImage(new Uri("mad.png", UriKind.Relative));