- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
private void HeroMouseEnter(object sender, MouseEventArgs e)
{
((Image)sender).Source = GetGlowingImage(((Image)sender).Name);
}
public ImageSource GetGlowingImage(string name)
{
switch (name)
{
case "Andromeda":
return "HeroGlowIcons/64px-Andromeda.gif";
default:
return null;
}
}
我只是想制作一个事件,根据鼠标进入的位置更改图像。但我无法完成这项工作。
编辑:我在 Windows 窗体中执行此操作,它 100% 像我希望的那样工作。我如何在 WPF 中翻译这样的内容?
void HeroMouseEnter(object sender, EventArgs e)
{
((PictureBox)sender).Image = GetGlowingImage(((PictureBox)sender).Name);
}
public Image GetGlowingImage(string name)
{
switch (name)
{
case "Andromeda":
return Properties.Resources._64px_Andromedahero___copia;
case "Engineer":
return Properties.Resources._64px_Engineerhero___copia;
default:
return null;
}
}
最佳答案
在您的 GetGlowingImage()
方法中,您需要生成一个新的 ImageSource
此链接可能有帮助:Setting WPF image source in code
编辑:
这里的不同之处在于,在 WindowsForms 代码中,您拥有 Properties.Resources._64px_Andromedahero___copia 是包含图像数据的图像变量的名称。在您的 WPF 代码中,字符串“文件名...”不是图像或图像源,它只是表示文件路径的字符串。您需要使用该路径加载图像文件。
我知道这没有意义,因为在设计时您可以指定一个文件名,它会为您构建 ImageSource。在代码中,您需要创建 ImageSource(或派生对象,即:BitmapSource)并将适当的图像加载到其中。
编辑:试试这个,未经测试(并检查我上面的链接):
public ImageSource GetGlowingImage(string name)
{
string fileName = string.Empty;
switch (name)
{
case "Andromeda":
{
fileName = "HeroGlowIcons/64px-Andromeda.gif";
break;
}
}
BitmapImage glowIcon = new BitmapImage();
glowIcon.BeginInit();
glowIcon.UriSource = new Uri("pack://application:,,,/ApplicationName;component/" + fileName);
glowIcon.EndInit();
return glowIcon;
}
关于c# - "Cannot convert string to ImageSource."我该怎么做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1904956/
我需要从用户那里获得图像文件路径并将图像存储在我的 sql server 数据库中。 我从用户那里获取文件并使用方法转换为 byte[] public static byte[] ImageToByt
我尝试做一个功能区工具栏。我的问题是它没有找到 ImageSource。这是我的简单代码:
我想为我的表单/窗口设置背景图像 like this guy但不是磁盘上的图像文件,而是内存中的 System.Drawing.Bitmap。 我需要做这样的事情: this.Background =
如何确定 ImageSource 的大小以像素为单位? ImageSource 对象有一个 Height 和一个 Width 属性,但它们以 1/96 英寸返回大小。 最佳答案 super 旧的帖子,
我正在尝试使用本地资源将图标放入按钮中。 (C# Visual Studio 2012) 在我的项目中,我有一个名为“Resources”的文件夹,其中包含“Icons/MyIcon.png” 以下代
我在图像控件上有多重绑定(bind)。我绑定(bind)了两个属性,一个是 bool 类型(IsLogged),一个是 typeof Uri(ProfilePhoto)。 XAML:
信息: 包:flutter 的 image_picker 插件,版本 0.6.3+1 仅 Android 版本,无 IOS 问题: 这是我选择图像的方法: Future pickImage(Ima
我的问题是图像加载似乎来自应用程序资源不正确。这是代码: BitmapImage bi = new BitmapImage(); bi.BeginInit(); bi.UriS
是否有任何简单的方法可以将 ImageSource 添加到堆栈并从中创建视频? 最佳答案 我已经上过这样的课了。我只需要提交我的“ImageInfo”,它是一个system.DrawingBitmap
我有一个 WPF 登录屏幕,我想将启动图像动态加载到其中。大多数情况下图像加载正常,但可能有十分之一的图像显示损坏,如下所示。 在 XAML 中,我有一个简单的图像控件。 我是通过绑定(bind)在
我编写了一个从操作系统获取文件图标并绑定(bind)到它们的应用程序,但是自从 System.Drawing.Icon对象不能用作 ImageSource在 Image 中控制,我不得不写一个conv
我使用 LeadTools 进行扫描。 我想将扫描图像转换为字节。 void twainSession_AcquirePage(object sender, TwainAcquirePageEvent
我是 WPF 的新手,正在尝试构建一个带有工具栏和图标的基本应用程序。我正在测试来自 Infragistics 的 XamRibbon 和功能区上显示的 ButtonTool 需要 ImageSour
我在 Xamarin.Forms 中的一个页面中的图像有一些问题。 基本上,我有 5 颗星排成一排,用户可以点击其中一颗星来给出评分。我有两张不同的图片,一张是彩色星星,另一张是黑色星星。如果用户点击
我有一个以这种方式构造的组合框的简单模板:
我正在使用 Viewbox创建一组我将动态绑定(bind)到 WPF View 的图标。 我正在绑定(bind)到资源名称并使用 Converter将资源名称转换为 ImageSource . 如果资
这个问题在这里已经有了答案: Convert System.Windows.Media.ImageSource to ByteArray (1 个回答) WPF Image to byte[] (7
我正在尝试通过给定的 base 64 字符串加载图像。 我有以下 XAML 图像: 我在类页面上有这个方法,它在构造函数中的 InitializeComponent() 之后调用: public v
我的项目文件夹中有一堆 *.tif 图像..我也将它们添加到我的 visual studio 项目中位于“Templates\Team Logos”的文件夹中 现在,如果我将图像源设置为: 行得通。
我正在使用 Akavache 下面的代码来缓存图像。 返回的是一个IBitmap,如何将这个IBitmap转为ImageSource? var url = "https://ashdbhjas/ima
我是一名优秀的程序员,十分优秀!