当我使用SHOWDIALOG刷新表单时,图片不会加载到图片框中,但是如果仅使用SHOW刷新,则效果很好。
我希望能够使用SHOWDIALOG刷新,并且仍然可以使用图片加载方法。
我尝试清除图片框和眉毛按钮的数据绑定。
private void formrefresh()
{
FoodItem FoodItem = new FoodItem();
FoodItem.ShowDialog();
this.Close();
}
public void GetImage()
{
OpenFileDialog BrowseImage = new OpenFileDialog();
BrowseImage.Filter = "Image Files(*.jpg; *.gif;)|*.jpg; *.gif";
if (BrowseImage.ShowDialog() == DialogResult.OK)
{
TextBox t =
Application.OpenForms["FoodItem"].Controls["imagePath"] as TextBox;
t.Text = BrowseImage.FileName;
filenametext = BrowseImage.FileName;
PictureBox p = Application.OpenForms["FoodItem"].Controls["foodImage"] as PictureBox;
p.Image = new Bitmap(BrowseImage.FileName);
}
}
private void BrowsImage_Click(object sender, EventArgs e)
{
GetFoodImage image = new GetFoodImage();
image.GetImage();
}
答案 0 :(得分:0)
查找表单(df[(df.count==[10, 5, 2, "tab"])
)并不是一种很好的使用方法。尽量避免这种情况。例如,如果某个表单有多个实例,则可能会很复杂,您将必须找到要更新的确切实例。
在您的示例中,使用库获取图像没有多大意义。如果确实需要在单独的类库中使用它,则只需返回路径即可。只需从GetImage方法返回图像路径并从FoodImage设置PictureBox。
Application.OpenForms