Если я создать класс и сделать его производным от ListView, как это ...Почему событие OnDrawItem для ListView не влияет на среду разработки?
class MyListView : ListView
{
public MyListView() : base()
{
DoubleBuffered = true;
OwnerDraw = true;
Cursor = Cursors.Hand;
Scrollable = false;
}
protected override void OnDrawItem(DrawListViewItemEventArgs e)
{
//base.OnDrawItem(e);
}
}
Затем я открываю вид дизайна моей формы окна и добавить новый объект MyListView затем добавить один элемент и связать его к списку изображений. Я вижу, что в объекте mylistview есть один элемент. Он не влияет на объект, который у меня есть, на мою форму под названием lv
типа MyListView
. Когда я запускаю свое приложение, с другой стороны, я точно вижу, чего я ожидал, и нет элементов, перечисленных.
Зачем это повлияло на время выполнения, а не на дизайн-время?
Умм ... Хорошо, я вставляю этот код в новый файл класса, затем открываю форму и нажимаю на панель инструментов и перетаскиваю ее в форму. Я выбираю новый объект в форме и меняю 'LargeImageList' на мои изображения и редактирует элементы, чтобы включить один элемент с изображением из imagelist, и он использует стандартный' View' 'LargeIcon'. Он показывает, что элемент отлично подходит во время разработки, но запускает его, и ничего не отображается ... Как вы его работаете, это потрясающе для меня. –
Не задавать свойство «Вид» - довольно большая ошибка, имеет значение, когда вы производите розыгрыш. Прямо сейчас вы просто видите, что он нарисовал ярлык, это не набросок.Guessing: не используйте событие Load для изменения свойств, это * gauche *. –
Я также тестировал этот код: 'this.View = System.Windows.Forms.View.Details; this.OwnerDraw = true; this.Columns.Add ("Х"); this.Items.Add ("1"); this.Items.Add ("2"); 'Но ничего не изменилось. –