मैं अपने डेटाग्रिड व्यू में एक सेल को हेरफेर करना चाहता हूं, जब यह मान्य हो रहा है ताकि उपयोगकर्ता उस मान में प्रवेश कर सके जो डेटाबेस के लिए मान्य नहीं है, लेकिन आसानी से वैध डेटा में परिवर्तित हो जाता है, तो प्रोग्राम मूल्य को उचित में बदलें।DataGridView प्रमाणीकरण और बदलना सेल मान
मैं अपने मूल्य को सही तरीके से सत्यापित करने में सक्षम हूं लेकिन जब मैं इसे किसी वैध रूप में बदलने की कोशिश करता हूं तो मुझे डेटा एरर मिलता है। यहाँ मेरी कोड है:
private void unit_List_2_GroupsDataGridView_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
Console.WriteLine("Validating");
DataGridViewColumn col = this.unit_List_2_GroupsDataGridView.Columns[e.ColumnIndex];
DataGridViewCell cell = this.unit_List_2_GroupsDataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex];
if (col == this.batchDataGridViewTextBoxColumn && this.unit_List_2_GroupsDataGridView.IsCurrentCellInEditMode)
{
Console.WriteLine(" Batch Column");
DataRow[] rows = label_EntryDataSet.viewJobBatchList.Select(String.Format("Job={0} AND Display='{1}'"
, comboBox1.SelectedValue, e.FormattedValue));
if (rows.Length == 1)
{
Console.WriteLine(" Auto Completed item from list: {0}", rows[0]["Batch"]);
//e.Cancel = true;
cell.Value = rows[0]["Batch"];
//this.unit_List_2_GroupsDataGridView.EndEdit();
}
else
{
Console.WriteLine(" No Autocomplete!");
int i = 0;
if (!int.TryParse(e.FormattedValue.ToString(), out i))
{
Console.WriteLine(" Not an integer either");
e.Cancel = true;
}
}
}
}
लाइन है कि cell.Value पढ़ता = पंक्तियों [0] [ "बैच"]; ऐसा नहीं कर रहा है जो मैं उम्मीद करता हूं।
कृपया सही त्रुटि संदेश पोस्ट करें और इंगित करें कि कोड की कौन सी पंक्ति का उल्लेख किया गया है। – David