【发布时间】:2011-12-30 21:37:37
【问题描述】:
我在应用程序中有一个自定义画布,它没有显示图像,在 XAML 中,我写道:
<local:MyCanvas>
<local:MyCanvas.LayoutTransform>
<ScaleTransform x:Name="scale" ScaleX="1" ScaleY="1" />
</local:MyCanvas.LayoutTransform>
<Image Source="C:\abc.jpg" />
</local:MyCanvas>
我在Canvas上试过了,也可以,但是在派生类中没有出现,但是Visual Studio显示了轮廓,意思是图片已经添加了。
作为替代方案,在 MyCanvas:Canvas 类中,我输入:
Image img = new Image();
img.Width = 200;
BitmapImage myBitmapImage = new BitmapImage();
myBitmapImage.BeginInit();
myBitmapImage.UriSource = new Uri(@"C:\abc.jpg");
myBitmapImage.DecodePixelWidth = 200;
myBitmapImage.EndInit();
img.Source = myBitmapImage;
this.Children.Add(img);
仍然不可见。有什么想法吗?
【问题讨论】:
-
这可能是您的
MyCanvas类中的某个问题。如果您从课程中删除所有内容,您是否仍然看到问题,所以它只是public class MyClass : Canvas {}? -
您确定图像存在于提供的路径中吗? (有时是简单的事情......)
-
是的,否则 Visual Studio 会自动报错。为了确定,我再次检查了它。
标签: c# .net wpf image wpf-controls