私はC++開発者であり、現在WPFアプリに取り組んでいます。このアプリでは、4つのラジオボタンを動的に生成する必要があり、各ボタンのタイトル名は異なります。私はMVVMパターンに従っています。
<Grid Grid.Row="0">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition Height="35" />
</Grid.RowDefinitions>
<RadioButton Grid.Row="0" Content="{Binding RadioBase}" IsChecked="{Binding BaseCheck}" Height="15" Width="80" HorizontalAlignment="Center" Margin="0,0,0,0" VerticalAlignment="Center" />
<Button Grid.Row="1" Content="Refresh Regs" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0" Width="100" Height="25" />
</Grid>
XAM1に気付いた場合は、ラジオボタンが1つだけありますGrid.Row="0"
。Content
理想的には、それを4回生成し、それにバインディングを設定して、IsChecked
4つの異なるを与えるようにしますContent
。
ViewModel:
private bool sBaseCheck;
public bool BaseCheck
{
get { return this.sBaseCheck; }
set
{
this.sBaseCheck= value;
this.OnPropertyChanged("BaseCheck");
}
}
private string _RadioBase;
public string RadioBase
{
get
{
return _RadioBase;
}
set
{
_RadioBase= value;
OnPropertyChanged("RadioBase");
}
}
私はこれをC++アプリケーションで次のように実行しました。
for(i = 0; i < 4; i++)
{
m_registerBase[i] = new ToggleButton(("Base 0x")+String::toHexString(i * 0x40));
addAndMakeVisible(m_registerBase[i]);
m_registerBase[i]->addButtonListener(this);
}
ここに気付くと、4回作成され、ボタンクリックイベントが1つあります。次のようにタイトルを作成します。
- ボタン1=ベース0x0(i = 0およびtoHexStringが0x0を0に変換するため)
- ボタン2=ベース0x40(i = 1およびtoHexStringが0x40を40に変換するため)
- ボタン3=ベース0x80(i = 2およびtoHexStringが0x80を80に変換するため)
- ボタン4=ベース0xc0(i = 3であり、toHexStringが0xc0をc0に変換するため)
WPFアプリケーションでこのようにするにはどうすればよいですか?:)皆さんが私がこれを解決するのを手伝ってくれたら幸いです。:)
ありがとう