У меня есть поле со списком, выбор которого определяет содержимое сетки данных.
<DataGrid Height="100" Margin="10"/>
через
private void ComboBox_DropDownClosed(object sender, EventArgs e)
{
string strComboBoxName = (sender as ComboBox).Name;
string strComboBoxSelectedItem = (sender as ComboBox).Text;
int iComboBoxSelectedItem = (sender as ComboBox).SelectedIndex;
Serializers.Logger.WriteLog("ComboBox Dropdown closed " + strComboBoxName + " selected " + strComboBoxSelectedItem);
string strError = string.Empty;
string strNewText = (sender as ComboBox).Text;
dtgFeatures.ItemsSource = null;
switch (iComboBoxSelectedItem)
{
case 0: dtgFeatures.ItemsSource = obcCfgUsers; break;
case 1: dtgFeatures.ItemsSource = obcCfgPartPrograms; break;
default: MessageBox.Show("ComboBox_DropDownClosed: item " + iComboBoxSelectedItem + " not acknowledged"); break;
}
}
}
с
[Serializable]
public class CfgUsers
{
public string ID { get; set;}
public string Username{ get; set;}
public string Password{ get; set;}
public bool IsAdministrator{ get; set;}
//public Image Photo{ get; set;}
}
[Serializable]
public class CfgPartPrograms
{
public string Group{ get; set;}
public string Description{ get; set;}
public string Filename{ get; set;}
public string Notes{ get; set;}
//public Image Picture{ get; set;}
}
короче говоря, он изменяет источник элементов для сетки данных.
Проблема в том, что я получаю следующую ошибку [перевод]:
Список элементов должен быть пустым перед использованием с источником элементов.
Это то, чего я не понимаю: я хочу иметь возможность изменить источник, но сохранить элементы в двух списках. И используйте сетку данных для добавления/редактирования элементов. Так что списки не могут быть пустыми.
Спасибо
CfgUsers
иCfgPartPrograms
. Там может быть что-то, что может испортить вам жизнь. - person Uchiha Itachi   schedule 09.12.2016