私は別のクラスからパブリックメソッドを呼び出しています。これはパラメータとしてListを取り込み、各項目をテキストフィールドに出力するリストを通過します。問題は、テキストフィールドが空のままであることです!テキストボックスに入力する前にアイテムをコンソールに出力することでリストにデータが入力されていることを確認しました。C#テキストボックスが空のまま残ります
リストには文字列が含まれており、各文字列をテキストフィールドに続けてセミコロンで出力する必要があります。
これは、呼び出されるメソッドです。
public void fillAttachment(List<string> attachList)
{
for (int i = 0; i < attachList.Count; i++)
{
Console.WriteLine("List: " + attachList[i]);
txtAttach.Text += attachList[i] + ";";
}
}
FillAttachmentを呼び出すときにUIスレッドを使用しているとしますか?それ以外の場合は例外がスローされます。あなたがtxtAttach ...のコードでブレークポイントを歩いていくと、ループするにつれてそれが成長していますか? – tonycoupland
forループをスキップして確認してください。 TextBoxにテスト文字列を設定するだけで、動作しますか?その場合は、文字列をキャッシュしてからTextBoxに設定してください。文字列のようなものtmpString = txtAttach.Text;アイテムを連結し、最後にtxtAttach.Text = tmpStringを更新します。 – SuperOli
文字列をテキストボックスに割り当てるだけでは機能しません。テキストボックスに問題があるはずです。何が間違っている可能性がありますか? –