यदि पंक्ति में जोड़ें DataTable
DataRow row = datatable1.NewRow();
row["column2"]="column2";
row["column6"]="column6";
datatable1.Rows.Add(row);
कैसे के बारे में DataGridView
??
यदि पंक्ति में जोड़ें DataTable
DataRow row = datatable1.NewRow();
row["column2"]="column2";
row["column6"]="column6";
datatable1.Rows.Add(row);
कैसे के बारे में DataGridView
??
जवाबों:
तुम कर सकते हो:
DataGridViewRow row = (DataGridViewRow)yourDataGridView.Rows[0].Clone();
row.Cells[0].Value = "XYZ";
row.Cells[1].Value = 50.2;
yourDataGridView.Rows.Add(row);
या:
DataGridViewRow row = (DataGridViewRow)yourDataGridView.Rows[0].Clone();
row.Cells["Column2"].Value = "XYZ";
row.Cells["Column6"].Value = 50.2;
yourDataGridView.Rows.Add(row);
दूसरा रास्ता:
this.dataGridView1.Rows.Add("five", "six", "seven","eight");
this.dataGridView1.Rows.Insert(0, "one", "two", "three", "four");
प्रेषक: http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.rows.aspx
RowTemplate
की DataGridView
। जब आप अलग-अलग पंक्तियों में अलग-अलग शैली रखते हैं, तो यह एक समस्या बन जाती है DataGridView
।
ऐशे ही:
var index = dgv.Rows.Add();
dgv.Rows[index].Cells["Column1"].Value = "Column1";
dgv.Rows[index].Cells["Column2"].Value = 5.6;
//....
कहते हैं कि आपके पास एक डेटाग्रिड्यू है जो एक डेटासेट के लिए बाध्य नहीं है और आप प्रोग्राम को नई पंक्तियों को पॉप्युलेट करना चाहते हैं ...
यहाँ आप इसे कैसे करते हैं।
// Create a new row first as it will include the columns you've created at design-time.
int rowId = dataGridView1.Rows.Add();
// Grab the new row!
DataGridViewRow row = dataGridView1.Rows[rowId];
// Add the data
row.Cells["Column1"].Value = "Value1";
row.Cells["Column2"].Value = "Value2";
// And that's it! Quick and painless... :o)
datagridview.Columns.Add("columnname")
, एक DataTable की आवश्यकता नहीं है, और एक मुस्कान के साथ समाप्त होता है
ऐशे ही:
dataGridView1.Columns[0].Name = "column2";
dataGridView1.Columns[1].Name = "column6";
string[] row1 = new string[] { "column2 value", "column6 value" };
dataGridView1.Rows.Add(row1);
या आपको ऐसे मूल्यों को सेट करने की आवश्यकता है जो व्यक्तिगत रूप से उचित उपयोग करें .Rows()
, जैसे:
dataGridView1.Rows[1].Cells[0].Value = "cell value";
dataGridView1.Rows[1].Cells[0].Value = "cell value"
:;
डीजीवी में एक पंक्ति के साथ कोई नई पंक्ति जोड़ना ऐड () के साथ कोई भी डेटा डालने (या टैग प्रॉपर्टी में ऑब्जेक्ट को बाइंड करने ) से पहले सिलेक्शन चेंज किए गए इवेंट को बढ़ाता है ।
RowTemplate से एक क्लोन पंक्ति बनाना सुरक्षित है imho:
//assuming that you created columns (via code or designer) in myDGV
DataGridViewRow row = (DataGridViewRow) myDGV.RowTemplate.Clone();
row.CreateCells(myDGV, "cell1", "cell2", "cell3");
myDGV.Rows.Add(row);
यह है कि मैं एक पंक्ति को कैसे जोड़ूँ अगर dgrview खाली है: (myDataGridView मेरे उदाहरण में दो कॉलम हैं)
DataGridViewRow row = new DataGridViewRow();
row.CreateCells(myDataGridView);
row.Cells[0].Value = "some value";
row.Cells[1].Value = "next columns value";
myDataGridView.Rows.Add(row);
डॉक्स के अनुसार: "CreateCells () मौजूदा कोशिकाओं को साफ करता है और आपूर्ति की गई DataGridView टेम्पलेट के अनुसार उनका टेम्पलेट सेट करता है"।
यदि ग्रिड किसी DataSet / तालिका के विरुद्ध बाध्य है, तो BindingSource जैसे उपयोग करने के लिए बेहतर है
var bindingSource = new BindingSource();
bindingSource.DataSource = dataTable;
grid.DataSource = bindingSource;
//Add data to dataTable and then call
bindingSource.ResetBindings(false)
यहाँ ऐसा करने का एक और तरीका है
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
dataGridView1.ColumnCount = 3;
dataGridView1.Columns[0].Name = "Name";
dataGridView1.Columns[1].Name = "Age";
dataGridView1.Columns[2].Name = "City";
dataGridView1.Rows.Add("kathir", "25", "salem");
dataGridView1.Rows.Add("vino", "24", "attur");
dataGridView1.Rows.Add("maruthi", "26", "dharmapuri");
dataGridView1.Rows.Add("arun", "27", "chennai");
}
यदि आपको सेल वैल्यू स्ट्रिंग से अलग कुछ भी हेरफेर करने की आवश्यकता है जैसे कि एक टैग जोड़ना, तो यह प्रयास करें:
DataGridViewRow newRow = (DataGridViewRow)mappingDataGridView.RowTemplate.Clone();
newRow.CreateCells(mappingDataGridView);
newRow.Cells[0].Value = mapping.Key;
newRow.Cells[1].Value = ((BusinessObject)mapping.Value).Name;
newRow.Cells[1].Tag = mapping.Value;
mappingDataGridView.Rows.Add(newRow);
yourDGV.Rows.Add(column1,column2...columnx); //add a row to a dataGridview
yourDGV.Rows[rowindex].Cells[Cell/Columnindex].value = yourvalue; //edit the value
आप एक नई पंक्ति भी बना सकते हैं और फिर उसे इस तरह से DataGridView में जोड़ सकते हैं:
DataGridViewRow row = new DataGridViewRow();
row.Cells[Cell/Columnindex].Value = yourvalue;
yourDGV.Rows.Add(row);
यदि आप एक सूची बाँध रहे हैं
List<Student> student = new List<Student>();
dataGridView1.DataSource = student.ToList();
student .Add(new Student());
//Reset the Datasource
dataGridView1.DataSource = null;
dataGridView1.DataSource = student;
यदि आप DataTable को बाइंड कर रहे हैं
DataTable table = new DataTable();
DataRow newRow = table.NewRow();
// Add the row to the rows collection.
table.Rows.Add(newRow);
DataGridView से प्रतिलिपि पंक्ति का एक उदाहरण और उसी dataGridView में एक नई पंक्ति जोड़ी गई:
DataTable Dt = new DataTable();
Dt.Columns.Add("Column1");
Dt.Columns.Add("Column2");
DataRow dr = Dt.NewRow();
DataGridViewRow dgvR = (DataGridViewRow)dataGridView1.CurrentRow;
dr[0] = dgvR.Cells[0].Value;
dr[1] = dgvR.Cells[1].Value;
Dt.Rows.Add(dR);
dataGridView1.DataSource = Dt;
//Add a list of BBDD
var item = myEntities.getList().ToList();
//Insert a new object of type in a position of the list
item.Insert(0,(new Model.getList_Result { id = 0, name = "Coca Cola" }));
//List assigned to DataGridView
dgList.DataSource = item;
यदि आप पहले से ही परिभाषित करते हैं DataSource
, तो आप DataGridView
´s प्राप्त कर सकते हैं DataSource
और इसे एक के रूप में डाल सकते हैंDatatable
।
फिर एक नया जोड़ें DataRow
और फ़ील्ड्स मान सेट करें।
इसमें नई पंक्ति जोड़ें DataTable
और परिवर्तनों को स्वीकार करें।
C # में यह कुछ इस तरह होगा ।।
DataTable dataTable = (DataTable)dataGridView.DataSource;
DataRow drToAdd = dataTable.NewRow();
drToAdd["Field1"] = "Value1";
drToAdd["Field2"] = "Value2";
dataTable.Rows.Add(drToAdd);
dataTable.AcceptChanges();
string[] splited = t.Split('>');
int index = dgv_customers.Rows.Add(new DataGridViewRow());
dgv_customers.Rows[index].Cells["cust_id"].Value=splited.WhichIsType("id;");
लेकिन ध्यान रहे, WhichIsType
मेरे द्वारा बनाई गई विस्तार विधि है।
datagridview1.DataSource = yourDataTable