आप वांछित पंक्ति संपादन योग्य बनाकर और सेलएडिट एक्टिवेशन ईवेंट का उपयोग करके इसे प्राप्त कर सकते हैं। अपने OLV प्रारंभ और "हटाएँ-स्तंभ" इस प्रकार है:
// fire cell edit event on single click
objectListView1.CellEditActivation = ObjectListView.CellEditActivateMode.SingleClick;
objectListView1.CellEditStarting += ObjectListView1OnCellEditStarting;
// enable cell edit and always set cell text to "Delete"
deleteColumn.IsEditable = true;
deleteColumn.AspectGetter = delegate {
return "Delete";
};
तो फिर तुम जैसे ही स्तंभ क्लिक किया जाता है CellEditStarting हैंडलर में पंक्ति निकाल सकते हैं:
private void ObjectListView1OnCellEditStarting(object sender, CellEditEventArgs e) {
// special cell edit handling for our delete-row
if (e.Column == deleteColumn) {
e.Cancel = true; // we don't want to edit anything
objectListView1.RemoveObject(e.RowObject); // remove object
}
}
इस पर सुधार करने के लिए, आप पाठ के अलावा एक छवि प्रदर्शित कर सकते हैं।
// assign an ImageList containing at least one image to SmallImageList
objectListView1.SmallImageList = imageList1;
// always display image from index 0 as default image for deleteColumn
deleteColumn.ImageGetter = delegate {
return 0;
};
परिणाम:
आप छवि के बगल में किसी भी पाठ प्रदर्शित करने के लिए नहीं करना चाहते हैं तो आप उपयोग कर सकते हैं
deleteColumn.AspectToStringConverter = delegate {
return String.Empty;
};
तुम भी एक के लिए पहलू सेट कर सकते हैं खाली स्ट्रिंग, लेकिन इसे "सर्वोत्तम अभ्यास" के रूप में मानें। अभी भी एक पहलू लौटने से, सॉर्टिंग और ग्रुपिंग अभी भी काम करेगी।
स्रोत
2012-11-02 08:31:46