【问题标题】:How to get and set a value to and from an asp HiddenField如何在asp HiddenField中获取和设置值
【发布时间】:2011-06-15 18:44:51
【问题描述】:

我想向HiddenField ASP.NET 控制器添加一个布尔值,以便在回发后可以保留该值。这是我的代码:

Public Property IsAddingNewCause() As Boolean
    Get 
        Return IsAddingNewCauseField.value
    End Get
    Set(ByVal value As Boolean)
        IsAddingNewCauseField.value = value          
       '^^^^^^^^^^^^^^^^^^^^^this is where I want to set the HiddenField's value!
    End Set
End Property

ASP.NET 标记

<asp:ListView ID="lstNewCause" runat="server" DataSource="..." >
    <EditItemTemplate>
                <tr>
                    <td>
                        <asp:HiddenField ID="IsAddingNewCauseField" runat="server" Value="" />

[...]

编辑

问题是找不到控件的 ID: Error 311 Name 'IsAddingNewCauseField' is not declared.

【问题讨论】:

  • 您遇到了什么问题?
  • 所以你是说在你的属性的设置器中,没有设置隐藏字段值?你怎么知道的?
  • 什么是包含控件?
  • 请查看错误信息的编辑
  • 包含控件是一个

标签: asp.net vb.net boolean hiddenfield


【解决方案1】:

我认为您需要搜索列表视图控件。该控件没有设计器条目,仅在动态创建时存在。我可能是错的,因为我在我的手机上,无法检查。

编辑包含的代码,它将遵循这些路线。

Protected Sub lstNewCause_ItemUpdated(sender As Object, e As ListViewUpdatedEventArgs)

    Dim l As ListView = DirectCast(sender, ListView)

    Dim item As ListViewItem = lstNewCause.Items(l.SelectedIndex)

    Dim IsAddingNewCauseField As HiddenField = DirectCast(item.FindControl("IsAddingNewCauseField"), HiddenField)

    '...do your stuff


End Sub

【讨论】:

  • 就是这样!我将 hiddenField 从列表视图中取出,它起作用了。谢谢!
  • 请在您有时间的时候,说明您将如何从ListView 中找到HiddenField
【解决方案2】:

HiddenField 值属性类型为字符串。您必须在 get 中将 IsAddingNewCauseField.Value 转换为 Boolean,并在 set 访问器中调用 value.ToString()。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-16
    • 2012-11-07
    • 1970-01-01
    • 2014-12-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多