Браузеры соглашаются с ним. Однако, как синтаксические анализы библиотеки приложения это может варьироваться.
Программы , предположил собирать в группу тождественно названные объекты. В то время как спецификация HTML явно не говорит это, она неявно указана в документация относительно флажков :
флажки Several в форме могут совместно использовать то же имя элемента управления. Таким образом, например, флажки позволяют пользователям выбирать несколько значений для того же свойства.
Разработчики, которые знают только C # или только VB.Net может не знать, что это одно из самых больших различий между VB.NET и C #.
Я беззастенчиво скопирую это красивое объяснение событий VB: VB использует декларативный синтаксис для присоединения событий. Предложение Handles появляется в коде, который будет обрабатывать событие. При необходимости несколько методов могут обрабатывать одно и то же событие, и несколько событий могут обрабатываться одним и тем же методом. Использование предложения Handles зависит от модификатора WithEvents , появляющегося в объявлении базовой переменной, такой как кнопка. Вы также можете присоединить обработчики свойств с помощью ключевого слова AddHandler и удалить их с помощью RemoveHandler. Например
Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
Private Sub TextBox1_Leave(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles TextBox1.Leave
'Do Stuff '
End Sub
В C # вы не можете использовать декларативный синтаксис. Вы используете + =, который перегружен, чтобы действовать как VB.Net AddHandler. Вот пример, беззастенчиво украденный из ответа tster :
public MyClass()
{
InitializeComponent();
textBox1.Leave += new EventHandler(testBox1_Leave);
}
void testBox1_Leave(object sender, EventArgs e)
{
//Do Stuff
}
public MyClass()
{
InitializeComponent();
textBox1.LostFocus += new EventHandler(testBox1_LostFocus);
}
void testBox1_LostFocus(object sender, EventArgs e)
{
// do stuff
}
В C # 2 и выше вы добавляете обработчики событий следующим образом:
yourObject.Event += someMethodGroup;
Где подпись someMethodGroup
совпадает с подписью делегата yourObject.Event
.
В C # 1 вам нужно явно создать обработчик событий, подобный этому:
yourObject.Event += new EventHandler(someMethodGroup);
, и теперь подписи группы методов, события и EventHandler
должны совпадать.