これは非常に一般的で既存の問題であることは知っていますが、ここから多くの解決策を試しましたが、同じエラーが発生し続けています。
バグがどこにあるのか教えてください:(そして、情報が不足している場合は編集/提案してください
コード: XAML:
<DataGrid Name="dtgQCNumbers"
Width="409"
AutoGenerateColumns="False"
ItemsSource="{Binding Path=.}"
CanUserResizeColumns="True"
SelectionChanged="dtgQCNumbers_SelectionChanged"
>
<DataGrid.Columns>
<DataGridCheckBoxColumn Header="IsChecked" Width="100"
Binding="{Binding Path=IsActive}"
CanUserResize="True"/>
<DataGridTextColumn Header="QC_ID" Width="100"
Binding="{Binding Path=DataGridTextBox_QCList1}"
CanUserResize="True"/>
<DataGridTextColumn Header="Summary" Width="100"
Binding="{Binding Path=DataGridTextBox_QCSummary}"
CanUserResize="True"/>
<DataGridComboBoxColumn Header="ControlOption" Width="100"
SelectedItemBinding="{Binding Path=DataGridComboxBox_Control}"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
IsReadOnly="True"
CanUserResize="True">
<DataGridComboBoxColumn.ItemsSource>
<col:ArrayList>
<sys:String>AVS</sys:String>
<sys:String>DB</sys:String>
<sys:String>AVS_DB</sys:String>
</col:ArrayList>
</DataGridComboBoxColumn.ItemsSource>
</DataGridComboBoxColumn>
</DataGrid.Columns>
grid.ColumnWidth = new DataGridLength(100);
</DataGrid>
データ バインディングのコード ビハインドは次のとおりです。
private void OnInitialized()
{
string projectName = null;
string crNumber = null;
ComboBoxItem selectedProject;
selectedProject = (ComboBoxItem)ddlProject.SelectedItem;
projectName = selectedProject.Content.ToString();
ActiveDirectoryWrapper.ApplicationUserData userData = Common.GetUserData(userName);
string queryString;
if (rdoMyQCs.IsChecked == true)
{
queryString = "Blalalalala";
}
else
{
queryString = "Blahblah";
}
Recordset qcIdSet = Common.queryTestDirector(projectName, queryString);
qcIdSet.First();
string colname = qcIdSet.get_ColName(0);
_ds = new DataSet();
DataTable table = new DataTable();
_ds.Tables.Add(table);
DataColumn c1 = new DataColumn("IsChecked", typeof(bool));
table.Columns.Add(c1);
DataColumn c2 = new DataColumn("QC_ID", typeof(string));
c2.MaxLength = 500;
table.Columns.Add(c2);
DataColumn c3 = new DataColumn("QC_Summary", typeof(string));
c3.MaxLength = 500;
table.Columns.Add(c3);
DataColumn c4 = new DataColumn("Control Option", typeof(string));
c4.MaxLength = 500;
table.Columns.Add(c4);
while (!qcIdSet.EOR)
{
DataRow rw = table.NewRow();
rw["IsChecked"] = true;
rw["QC_ID"] = qcIdSet["BG_BUG_ID"].ToString();
rw["QC_Summary"] = "";
rw["Control Option for Deployment"] = "AVS_DB";
table.Rows.Add(rw);
qcIdSet.Next();
}
dtgQCNumbers.DataContext = _ds.Tables[0];
throw new NotImplementedException();
}
「ItemsSource を使用する前に、Items コレクションを空にする必要があります」というエラーが表示され続けます。