2014-07-25 106 views
-1

如何将复选框选中状态保存为布尔值?如何将复选框选中状态保存为布尔值?

ASP.NET

<asp:CheckBox ID="cb" runat="Server" /> 

VB

Dim cb As Boolean = cb.Checked 

以上代码生成以下错误:

'检查' 不是的成员“嘘精益”

+0

什么意思_NOT_ in:_“如何将复选框的选中状态不在gridview中转换为布尔结果?_?如果它不在'GridView'中,它在哪里? –

+0

@TimSchmelter它只是站在页面上。 – Obsidian

回答

3

How can the checked state of a checkbox be converted to a boolean result?

Checked属性已经返回Boolean,所以你的问题是有点混乱。

但是,您的CheckBox的名称是cb,您的Boolean变量使用了相同的名称。那么你想cb.Checked这是Boolean而不是CheckBox

如果它已经在页面的顶部,你可以直接引用它:

Dim isCheckBoxChecked As Boolean = cb.Checked ' no need to search the reference ' 

你应该选择适合您的变量和控制有意义的名字。

+0

@Obsidion:仍然令人困惑。如果它不在gridview中,你不需要找到它。你可以直接使用它,因为ASP.NET会在部分'designer.VB'文件中自动声明它。我编辑了我的答案。 –

+0

对不起,我只是想让复选框选中状态并将其保存为布尔值。上面的代码会产生错误。 – Obsidian

+0

@Obsidion:...我解释了原因。您为控件使用的布尔值使用相同的名称。 –

1

因为你的问题有点不清楚

以下情况?

Private Function cbChecked(ByVal ctrlCb As CheckBox) As Boolean 
    If ctrlCb.Checked Then 
     cbChecked = True 
    Else 
     cbChecked = False 
    End If 
    Return cbChecked 
End Function 



Dim blncb As Boolean = cbChecked(cb) 
+0

大家都在说这个不清楚。我没有看到它是如何更清晰。这是我有的代码,这是它产生的错误。答案很简单,变量不能与id相同。无论如何+1,谢谢。 – Obsidian