我正在尝试使用序列化字典(controlId - 字符串,controlValue - 字符串)保存一个 WebForm 中的所有控件。接下来我想反序列化该字典并用它们的值动态填充控件。
问题是我的一些控件具有 AutoPostBack true 和事件处理程序。有没有办法动态调用这些事件处理程序?我想通过控件的 id 避免另一个开关。
前任:
foreach (KeyValuePair<string, string> kvp in dict)
{
Control c = findControlRecursive(Page, kvp.Key);
if (c != null)
{
switch (c.GetType().Name)
{
case "TextBox":
((TextBox)c).Text = kvp.Value;
if (((TextBox)c).AutoPostBack) .......
编辑:
假设我有 10 种不同的形式。每个都有大约 50 个控件。我想添加/编辑一组数据。我尽量避免在数据库中使用每个控件的列,这就是我想使用序列化的原因。