我有一张图片显示在
中picShowPicture.Image = Image.FromFile(textbox1.Text)
当图像显示在主屏幕上时,我想要的是当用户从数据库中选择图像时,它会在新窗口中打开吗?
这是怎么做到的?
答案 0 :(得分:4)
在Designer中创建一个新表单并在其中选择 PictureBox 。并创建一个特殊的方法,例如
public void SetPicture(Image image)
将图像设置为PictureBox。
选择图片电话
YourForm form = new TourForm();
form.SetPicture(Image.FromFile(textbox1.Text));
form.ShowDialog();
或者你可以在动态创建新形式:
Form form = new Form();
PictureBox pictureBox = new PictureBox();
pictureBox.Dock = DockStyle.Fill;
pictureBox.Image = Image.FromFile(textbox1.Text);
pictureBox.SizeMode = PictureBoxSizeMode.StretchImage;
form.Controls.Add(pictureBox);
form.ShowDialog();
答案 1 :(得分:2)
我将假设通过“从数据库中选择一个图像”不意味着您(de)序列化BLOB并且只是希望代码使图像显示在一个新窗口中。我将进一步假设您在项目中创建了第二个表单,名为“Form2”,其中包含一个名为“picImageViewerOnForm2”的图像查看器。
var newImage = Image.FromFile(textbox1.Text);
var newForm = new Form2();
newForm.picImageViewerOnForm2.Image = newImage;
newForm.Show();
答案 2 :(得分:1)
将新的Windows窗体添加到项目中,名为“ShowImageWindow”。 将一个图片框添加到窗口,以及以下代码:
public Image ImageToShow { get; set; }
public ShowImageWindow()
{
InitializeComponent();
}
private void ShowImageWindow_Load(object sender, EventArgs e)
{
pictureBox1.Image = ImageToShow;
}
然后按如下所示创建并显示窗口:
Image img = Image.FromFile(textBox1.Text);
ShowImageWindow frm = new ShowImageWindow();
frm.ImageToShow = img;
frm.ShowDialog();
frm.Dispose();
答案 3 :(得分:1)
将表单添加到应用程序并将PictureBox放在其上,假设PictureBox的ID为“pictureBox1”,然后在该表单上创建公共保护以访问picutre框,如下所示:
public partial class ShowPictureForm : Form
{
public PictureBox ImagePictureBox { get { return this.pictureBox1; } }
public ShowPictureForm()
{
InitializeComponent();
}
}
然后显示这样的新形式:
ShowPictureForm spf = new ShowPictureForm();
spf.ImagePictureBox.Image.FromFile(textbox1.Text)
spf.ShowDialog();
答案 4 :(得分:0)
创建一个新的Form(从System.Windows.Forms.Form派生的新类型),它接受图像路径作为构造函数。
说新形式是ImageForm。在此表单中创建PictureBox。
在ShowImageWindow函数中(或类似于主窗体),如下所示调用
ImageForm imageForm = new ImageForm(textbox1.Text)
imageForm.ShowDialog()
在ImageForm的ctor中,将Image设置为ImageForm中的picturebox控件
public ImageForm(String imagePath)
{
pictureBox1.Image = Image.FromFile(imagePath);
}
答案 5 :(得分:0)
创建一个只包含图片框的新表单。
然后在形成对象时将图像传递为参数(当然您必须创建表单的参数化构造函数)并将该图像传递给全局图像变量。
在Form_Load中设置全局图像变量作为图像控制图像。