C# 以编程方式更改picturebox中的jpg

C# 以编程方式更改picturebox中的jpg,c#,image,winforms,C#,Image,Winforms,我在winforms中有一个简单的应用程序,需要根据if语句更改映像。这句话之所以被触发,是因为其他事情也在发生。我已经看了以下例子: 所有这些都没有让我找到一个解决方案,来解释为什么我无法改变图像 以下是我尝试过的: pictureBox1.Image = global::KatReminder.Properties.Resources.angry_orange_cat; pictureBox1.Refresh(); pictureBox1.Load(); pictureBox1.

我在winforms中有一个简单的应用程序,需要根据if语句更改映像。这句话之所以被触发,是因为其他事情也在发生。我已经看了以下例子:

所有这些都没有让我找到一个解决方案,来解释为什么我无法改变图像

以下是我尝试过的:

pictureBox1.Image = global::KatReminder.Properties.Resources.angry_orange_cat;

pictureBox1.Refresh();

pictureBox1.Load();

pictureBox1.Image = Image.FromFile(@"\Resources\angry-orange-cat.jpg");

pictureBox1.BackgroundImage = KatReminder.Properties.Resources.angry_orange_cat;

pictureBox1.Refresh();

pictureBox1.Load(@"\Resources\angry-orange-cat.jpg");

在包含文件的两个示例中,我使用的完整路径在此示例中被截断。

您应该尝试调用
pictureBox1.Invalidate()
。通常,当我需要确保重新绘制某些内容时,这对我很有效。

您应该尝试调用
pictureBox1.Invalidate()。只是猜测,因为我真的不知道为什么你已经做的不管用。你的几种方法应该管用。我想知道你为什么不尝试
pictureBox1.ImageLocation=yourPath但如果没有工作,问题就在别处。请在它们的上下文中向我们展示这些调用,并通过在它们上设置断点来确保它们实际上已到达!您可能希望为Picturebox设置边框,以确保您甚至可以看到它,即它没有隐藏、移位或大小zero@Jashaszun,请填写您的。使答案无效。这对我来说很有用,我愿意接受。@Nallware很乐意效劳!:)