ASP.NET 2.0: пользовательский элемент управления в FormView должен сохранять пользовательские данные (для манекенов;)) - PullRequest
0 голосов
/ 01 сентября 2009

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

Я не хотел бы добавлять дополнительные кнопки для «внутреннего обновления», но надеялся понять механизмы ASP.net достаточно хорошо, чтобы сделать это так, как это должно быть сделано. К сожалению, я никуда не добираюсь (а время уходит), поэтому я надеюсь, что кто-нибудь поделится некоторыми соображениями о том, как заставить работать эту интеграцию, какие события посмотреть и т. Д.

Заранее спасибо:)

Майкл

Редактировать : спасибо за ваши комментарии, я пытаюсь дать более подробную информацию об этой идее:

<FormView...
   <EditItemTemplate...
      <table...
          <asp:Textbox text="<% Bind('bla1') %>...
          <uc1:MyControl id1="<%# Bind('bla2') %> editeable="True"...
          <asp:ImageButton CommandName="Update"...
...
   <ItemTemplate...
      <table...
          <asp:Textbox text="<%# Bind('bla') %>...
          <uc1:MyControl id1="bla" editeable="False"...

Этот пользовательский элемент управления uc1 отображает множество связанных записей (на основе id1) - и в режиме редактирования также позволяет редактировать / добавлять и т. Д. Эти «внутренние» записи. Теперь, поскольку у пользователей есть «стандартный» способ сохранения записей, я не хочу вмешиваться, добавляя специальный метод сохранения только потому, что нам случается редактировать некоторые внутренние записи в другом месте. Это не должно иметь значения для пользователя, интерфейс должен вести себя так же. Так что это означает, что мне придется позаботиться о внутренней экономии. Но как я узнаю, что пользователь хочет сохранить, и что было бы лучше для этого? Есть ли способ, которым пользовательский элемент управления может быть "уведомлен" о событии Update на содержащем элементе управления, должен ли я сделать это явным, настроив команду Update и т. Д. Мы пытаемся сделать его достаточно надежным и общим, чтобы его можно было легко использовать повторно. (Все еще надеясь, что это не противоречит;))

1 Ответ

2 голосов
/ 02 сентября 2009

Насколько я понимаю, эта проблема заключается в том, что у вас есть кнопка в веб-форме, но нет ни одной в вашем пользовательском контроле. Затем, когда нажата кнопка, вы хотите сохранить изменения, внесенные в пользовательский контроль. Если это так, то почему бы не создать метод в вашем пользовательском контроле, который сохраняет все сделанные изменения, и вызвать этот метод из события click кнопки в форме?

...