2009-10-24 4 views
-1

Когда я смог бы написать:Простая asp.net функция

<asp:TextBox id="Input" runat="server"/> <asp:Button onclick="<% Input.Text='my input' %>" /> 
+2

Извините, но я не знаю, что ваш вопрос здесь. Не могли бы вы прояснить, что вы просите. –

+1

Весь смысл asp.net - это не делать этого. OnClick - это событие, которое инкапсулирует вашу логику. Почему бы вам пощекотать эту логику в одной строке кода в разметке страницы? – 2009-10-24 19:23:49

+0

ха-ха, интересно видеть, как люди реагируют по-другому на этот вопрос. но никто не осознавал необходимость этой замечательной функции. Способ тройного оператора в C и лямбда-выражениях в LINQ обеспечивает сокращение для простых операторов, эта функция вполне может обеспечить такое же удобство. – pokrate

ответ

1

К сожалению, со стандартными WebForms это просто не представляется возможным. Свойство On<EventName> ожидает строку, которая должна соответствовать имени метода, подпись которого соответствует делегату обработчика события.

По существу, то, что вы описываете, - это возможность встроить привязку лямбда, когда вы вызываете событие. Чтобы добавить эту функциональность, вам нужно будет создать собственный ViewEngine для замены существующего WebForms. Это едва ли тривиальная задача, но это возможно, и это будет очень классная функция.

+0

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

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