我對MVVM作爲一個概念頗爲陌生,我目前正試圖設置一些東西,以便更改TabControl的選定索引將更改我擁有的ComboBox的項目源。目前,我有事情設置如下:MVVM TabControl更新組合框
public int SelectedTabIndex
{
get
{
return _selectedTabIndex;
}
set
{
_selectedTabIndex = value;
if (_selectedTabIndex == 0)
{
_readOnlyArray = ReadOnlyArrays.ReadOnlyColumnArrays.LoanerItemsSelect;
}
else if (_selectedTabIndex == 1)
{
_readOnlyArray = ReadOnlyArrays.ReadOnlyColumnArrays.CustomerSelect;
}
else if (_selectedTabIndex == 2)
{
_readOnlyArray = ReadOnlyArrays.ReadOnlyColumnArrays.JobSelect;
}
}
這勢必一個TabControl以下內容:
SelectedIndex="{Binding SelectedTabIndex, Mode=TwoWay}"
我也有這樣的:
public string[] ReadOnlyArray
{
get { return _readOnlyArray; }
set { _readOnlyArray = value;}
}
這勢必給組合框如下:
ItemsSource="{Binding readOnlyArray, Mode=TwoWay}"
我知道最有可能我這樣做完全錯誤,但我希望ComboBox的項目源更新每當TabControl的Tab索引被更改。
不相干的問題,爲什麼當它定義一個公共setter時,該屬性稱爲「ReadOnlyArray」? – PoweredByOrange
@ programmer93這是一個可怕的名字。 ComboBox的ItemSource是一個ReadOnly數組。我有點草率地命名它,並計劃在事情奏效後改變它。 – DanteTheEgregore