-4

最初の Windows フォームに DataGridView があります。ユーザーがクリックすると、2番目のDataGridViewであるポップアップが開き、最初のページDataGridViewに表示されるDataGridViewの行をクリックします。

問題は、1 つの DataGridView をクリックするFormと、ユーザーが任意の行を選択する 2 番目のフォームのポップアップを開くことです。その DataGridView から必要なデータを取得し、以前にウィンドウで開いていた最初のページにこれらのデータを送信します。このコード行から、値を Second Form から First Form に渡します。

FrmSetting _frmSetting = new FrmSetting(string _val,string code)

新しいキーワードが原因で、新しいページを開くか、そのようなものだと思います。First Form で送信する方法を教えてください。

ありがとう

4

2 に答える 2

2

2 番目のフォームにプロパティを作成し、選択した値をそのプロパティに設定します。その後、最初のフォームから取得できます。

アップデート:

//this should be in second form
string _myProperty;
public string MyProperty
{
    get{return _myProperty;}
    set{_myProperty=value; if(MyPropertyChanged!=null)MyPropertyChanged(this,null);}
}

public event EventHandler MyPropertyChanged;

//assign value to MyProperty when your dataGrid changes or whatever

次に、最初のフォームから次のように言うことができます。

string valueFromSecondForm = secondForm.MyProperty;
//subscribe to MyPropertyChanged event if you need to know when it is changed

最初のフォームからの情報が必要な場合は、同じことができます。

于 2013-03-27T16:26:37.717 に答える
0

最初のフォームをパラメーターとして 2 番目のフォームのコンストラクターに渡します。最初のフォームで更新する DataGrid を公開し、2 番目のフォームから更新します。

Form1.DataGrid1.CaptionText = "Caption 1";
于 2013-03-27T16:23:08.727 に答える