文字列値を持つチェックボックスのデータバインディング
-
03-07-2019 - |
質問
データ行をコントロールにバインドする必要があります。ここまでは順調ですね。問題は、データ行にバインドする必要がある列の文字列のみが含まれていることですが、もちろん、プロパティ「チェック済み」があります。チェックボックスの引数はブール引数のみを取ります。
ここでDataBindingを使用する方法はありますか?たぶん、間に何らかのコンバーターがありますか?
ありがとう
解決
ConvertEventHandlerデリゲートを使用する DataBindingのタイプを変更します。
例
Binding binding = new Binding("checked", dt, "string_field");
binding.Format += new ConvertEventHandler(binding_Format);
binding.Parse += new ConvertEventHandler(binding_Parse);
this.checkbox1.DataBindings.Add(binding);
void binding_Format(object sender, ConvertEventArgs e)
{
if (e.Value.ToString() == "yep") e.Value = true;
else e.Value = false;
}
void binding_Parse(object sender, ConvertEventArgs e)
{
if ((bool)e.Value) e.Value = "yep";
else e.Value = "nope";
}
所属していません StackOverflow