C# 在wpf中显示文件中的图像不起作用?
我有一个按钮b3和一个名为pictureBox1的图像。我使用的是WPF,但是我使用的是winforms openFileDialog,而不是WPF附带的对话框: 下面是我在按钮的单击事件中输入的代码:C# 在wpf中显示文件中的图像不起作用?,c#,wpf,C#,Wpf,我有一个按钮b3和一个名为pictureBox1的图像。我使用的是WPF,但是我使用的是winforms openFileDialog,而不是WPF附带的对话框: 下面是我在按钮的单击事件中输入的代码: private void b3_Click(object sender, RoutedEventArgs e) { System.Windows.Forms.OpenFileDialog openDialogIcon = new System.Windows.Forms
private void b3_Click(object sender, RoutedEventArgs e)
{
System.Windows.Forms.OpenFileDialog openDialogIcon = new System.Windows.Forms.OpenFileDialog();
if (openDialogIcon.ShowDialog() == System.Windows.Forms.DialogResult.OK) {
Image i = new Image();
BitmapImage src = new BitmapImage();
src.BeginInit();
src.UriSource = new Uri(openDialogIcon.FileName, UriKind.Absolute);
src.CacheOption = BitmapCacheOption.OnLoad;
src.EndInit();
i.Source = src;
i.Stretch = Stretch.Uniform;
//int q = src.PixelHeight; // Image loads here
}
}
当我点击按钮并选择一个图标时。图标不会出现在图片中
有人能解释一下为什么上面的代码没有在pictureBox中显示图标吗?您需要将您的图像分配给pictureBox,否则您将无法在屏幕上看到它,您只能在内存中创建图像对象
private void b3_Click(object sender, RoutedEventArgs e)
{
System.Windows.Forms.OpenFileDialog openDialogIcon = new System.Windows.Forms.OpenFileDialog();
if (openDialogIcon.ShowDialog() == System.Windows.Forms.DialogResult.OK) {
BitmapImage src = new BitmapImage();
src.BeginInit();
src.UriSource = new Uri(openDialogIcon.FileName, UriKind.Absolute);
src.CacheOption = BitmapCacheOption.OnLoad;
src.EndInit();
pictureBox1.Source = src;
}
}
尝试在窗口中拖放图像控件
...
//imageStretch <- the name of Image control
i.Stretch = Stretch.Uniform;
//int q = src.PixelHeight; // Image loads here
imageStretch.Source = src;
...
我看不出你在哪里给pictureBox1分配了什么…是的。这就是问题所在。很抱歉,在发布这个问题之前,我必须仔细研究一下代码。