Winformでユーザーコントロールに値を渡す方法
Windowsフォームでは、次の方法でユーザーコントロールに値を渡せます。
- プロパティ渡し:ユーザーコントロールにパブリックなプロパティを定義し、プロパティの値を設定してデータを渡す。例えば、ユーザーコントロールに「値」という名前のパブリックなプロパティを定義してから、別の場所でそのプロパティの値を設定してデータを渡す。
public partial class MyUserControl : UserControl
{
private string _value;
public string Value
{
get { return _value; }
set
{
_value = value;
// 进行其他操作
}
}
}
- イベントハンドリング:ユーザーコントロールにイベントを定義しておき、データを配信したい場合はそのイベントを発火させて、データをイベント引数として渡す。受け取り側はイベントをサブスクライブすることで、配信されたデータを取得できる。
public partial class MyUserControl : UserControl
{
public event EventHandler<string> ValueChanged;
private string _value;
public string Value
{
get { return _value; }
set
{
_value = value;
OnValueChanged(value);
}
}
protected virtual void OnValueChanged(string value)
{
ValueChanged?.Invoke(this, value);
}
}
- メソッド渡し: ユーザーコントロールでパブリックメソッドを定義し、そのメソッドを呼び出してパラメータを渡すことでデータを渡します。他の場所からそのメソッドを呼び出して適切なパラメータを渡すことでデータを渡すことができます。
public partial class MyUserControl : UserControl
{
public void SetValue(string value)
{
// 进行操作
}
}
これらは標準的な手法の一部ですが、特定のニーズと使用シナリオに応じて、ユーザーコントロールに値を渡すために適した方法を選択できます。