私は C# と Visual Studio の学習を始めたばかりで、本とサンプル コードの両方で作業しようとしています。
これはあまり素晴らしい質問ではないことは承知していますが、これが私が解決しようとしている問題です。Windows フォームがあり、tableLayoutPanel に含まれる画像ボックスに画像を表示する必要があります。単純な問題は、ロードする必要がある画像にいくつかのサイズがあり、典型的な画像が割り当てられたスペース内に完全に表示されないことです: コンテナに収まる領域のみが表示され、画像の残りの部分が切り取られます. 画像全体を表示する必要があり、サイズを変更する必要はありません。すでに autosize プロパティを設定していますが、うまくいかないようです。
ここでは、form.cs のコードをいくつか示します。
string imageName = openFileDialog1.FileName; // Get the image name
// Read the image
try
{
img = ( Bitmap) Image .FromFile(imageName);
}
catch
{
MessageBox.Show("oooops" , Text, MessageBoxButtons.OK, MessageBoxIcon .Hand);
}
pictureBox1.Image = img; // show the image
次に、form.designer.cs にあるプライベート void InitializeComponent() で:
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
...
this.pictureBox1 = new System.Windows.Forms.PictureBox();
...
this.tableLayoutPanel1.Controls.Add(this.pictureBox1, 1, 1);
...
this.tableLayoutPanel1.Controls.Add(this.pictureBox1, 1, 1);
...
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 9.034863F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 2.388038F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 88.5771F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(784, 762);
...
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
画像全体を表示する方法について何かヒントはありますか?
スライドバーを使用しても問題ありませんが、コンテナが autoscroll = true であるという事実にもかかわらず、何も起こらず、画像はまだ切り詰められています。
助けてくれてありがとう