1

Я нахожусь в процессе перехода проекта из Visual Studio 2003 до 2005 и только виделформа наследования в визуальных реализациях дизайнер Студии

Событие Нажмите только для чтения и не может быть изменен

при использовании унаследованных форм, независимо от модификатора на базовых элементах управления формами, сделает все элементы управления из базы Readonly в дизайнере (хотя в 2003 году это не сработало).

Я нашел этот пост metioning, что эта функция временно»отключено http://social.msdn.microsoft.com/Forums/en-US/winformsdesigner/thread/c25cec28-67a5-4e30-bb2d-9f8dbd41eb3a

Может кто-нибудь подтвердить, используется ли эта функция больше? Или как программировать вокруг него, чтобы быть в состоянии использовать базы управления События и до сих пор есть дизайнер?

Это один способ я нашел, но весьма болезненный, когда он используется, чтобы сделать водопровод для вас. даже просто скрывается один из элементов управления вы должны вручную сделать сейчас.

Public Class BFormChild 

    Friend Overrides Sub cmdApply_Click(ByVal sender As Object, ByVal e As System.EventArgs) 
     MyBase.cmdApply_Click(sender, e) 
    End Sub 
    Friend Overrides Sub cmdCancel_Click(ByVal sender As Object, ByVal e As System.EventArgs) 
     MyBase.cmdCancel_Click(sender, e) 
    End Sub 
    Friend Overrides Sub cmdOk_Click(ByVal sender As Object, ByVal e As System.EventArgs) 
     MyBase.cmdOk_Click(sender, e) 
    End Sub 

End Class 

ответ

2

Базовые классы, генерирующие события, требуют стандартного шаблона генерации событий. Это должно быть сделано в коде, дизайнер не может автоматически генерировать его. Это никогда не будет.

Public Class BFormBase 
    Public Event ApplyClicked As EventHandler 

    Protected Overridable Sub OnApplyClicked(ByVal e As EventArgs) 
    '--- Possible default implementation here 
    '... 
    RaiseEvent ApplyClicked(Me, e) 
    End Sub 

    Private Sub cmdApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdApply.Click 
    OnApplyClicked(e) 
    End Sub 
+0

о Дерр .. это, вероятно, почему они взяли его .. в VS 2003 можно напрямую связать с элементом управления в базовом классе (именно поэтому я и спрашиваю) и запустить событие напрямую в дочерней форме, и разработчик автоматически генерировал код. Этот способ имеет смысл держать его в соответствии с конструкторскими конструкциями .net. благодаря – CooPzZ

Смежные вопросы