我在CurrentCellDirtyStateChanged进行处理
第一列就是ComboBox控件结果GVShowAll.Rows[CurrnetCell.RowIndex].Cells[0].value为空;
怎么处理?

解决方案 »

  1.   

    可以在被绑定的DataTable的ColumnChanging事件中取
    事件第二个参数的ProposedValue属性是你要的值
      

  2.   

    http://hi.baidu.com/goga/blog/item/5bd4908f5f2685f2503d92cf.html
      

  3.   


    我没用DataTable绑定...........,
    z怎么弄?
      

  4.   

    for (int i = 0; i < dataGridView1.Rows.Count; i++)
                {
                  DataGridViewComboBoxCell dgvCmbCel= dataGridView1.Rows[i].Cells[列索引] as DataGridViewComboBoxCell;
                  string s=DataGridViewComboBoxCell.Value.toString();
      }
      

  5.   

    这样就可以了:
    DataGridViewComboBoxCell dgvCmbCel= dataGridView1.Rows[i].Cells[列索引] as DataGridViewComboBoxCell;
      string s = DataGridViewComboBoxCell.FormattedValue.ToString();
      

  6.   

    虽然不知道具体是什么样的情况,但是给出一种方案。
    .xaml 文件
    <data:DataGridTemplateColumn Header=”Unit” >
    <data:DataGridTemplateColumn.CellTemplate>
    <DataTemplate>
    <TextBlock Text=”{Binding Path=MeasurementUnit.unit}”/>
    </DataTemplate>
    </data:DataGridTemplateColumn.CellTemplate>
    <data:DataGridTemplateColumn.CellEditingTemplate>
    <DataTemplate>
    <ComboBox x:Name=”Units”
    DisplayMemberPath=”MeasurementUnit.unit” ItemsSource=”{Binding
    Path=Measurement.MeasurementsUnits}” SelectedItem=”{Binding Path=MeasurementUnit,
    Mode=TwoWay}” />
    </DataTemplate>
    </data:DataGridTemplateColumn.CellEditingTemplate>
    </data:DataGridTemplateColumn>.cs文件
    Measurement ms= e.Row.DataContext as Measurement;
    string test= ms.MeasurementUnit.unit;我这里datagrid整体绑定的是Measurement对象,combobox绑定了Measurement对象下的MeasurementsUnits,我想要得到的是MeasurementUnit.unit的值。