私の質問のタイトルは、私の問題が実際よりも単純に思えます。私がやっていることは、文字列をテキストボックスに入れようとしていますが、入りません。文字列をあるクラスから別のクラスに渡し、次に別のクラスに渡すことでこれを行っています。いわばはしごを滴り落ちるようなものです。文字列はここから始まります:
public static void FilePath(string fileName)
{
string fn = fileName;
PicForm.FileName(fn);
}
fileName
saveFileDialog
経由でからプルされていFilePath(sd.FileName)
ます。次にPicForm.FileName()
、次のように に移動します。
public static void FileName(string fileName)
{
string fn = fileName;
AddAtt aa = new AddAtt(Form1.con);
aa.AddScan(fn);
}
そこからaa.AddScan()
、次のように に送信されます。
public void AddScan(string fileName)
{
textBox7.Text = fileName;
}
明らかに、これは文字列がテキストボックスに入力されることですが、そうではありません。ここで、メッセージボックスを追加して、スティングがここに到達していることと、textBox7.Text が文字列 (fileName) に正しく設定されていることを確認します。MessageBoxes は、コードが機能することを示しています。しかし、テキストボックスは別のことを言っています。AddScan() を使用する別の方法も試しました。openFileDialog を使用する別のボタンに追加しました。そして、それは次のようになります。
private void button3_Click(object sender, EventArgs e)
{
string Chosen_File = "";
openFileDialog1.InitialDirectory = "C:";
openFileDialog1.FileName = "";
if (openFileDialog1.ShowDialog() == DialogResult.Cancel)
{
MessageBox.Show("Operation Cancelled");
}
else
{
Chosen_File = openFileDialog1.FileName;
//textBox7.Text = Chosen_File;
AddScan(Chosen_File);
}
}
そのクリック イベントから呼び出すとAddScan()
、textBox7 にテキストが正しく表示されるようになりました。私の質問は、なぜ一方の方法では機能するのに、他方の方法では機能しないのかということです。コードが機能するように思えます。どんな助けでも素晴らしいでしょう。