动态添加了checkbox之后调试提示:
类型“CheckBox”的控件“_ctl4”必须放在具有 runat=server 的窗体标记内
--------------------
但是如果在工具栏中拖一个panel到窗体中,
则动态添加checkbox到其中则没有错误
另外如果在动态生成的panel中动态加个label则也没有错误
----------------------
取值问题,好要解决....泣谢...~·!代码如下:
=====================
Dim str As String
Dim cb1 As New CheckBox
Dim cb2 As New CheckBox
Dim lb As New Label
lb.Text = "题目"
cb1.Checked = True
cb1.Text = "选项"
cb2.Checked = True
cb2.Text = "选项"
Panel1.Controls.Add(lb)
Panel1.Controls.Add(New LiteralControl("<br/>"))
Panel1.Controls.Add(cb1)
Dim pR As New Panel
pR.HorizontalAlign = HorizontalAlign.Right
pR.Wrap = True
pR.BackColor = System.Drawing.Color.Gainsboro
Page.Controls.Add(pR)
Dim l As New Label
l.Text = "This panel contains a right justified label."
pR.Controls.Add(l)
pR.Controls.Add(New LiteralControl("<br/>"))
pR.Controls.Add(cb2)
类型“CheckBox”的控件“_ctl4”必须放在具有 runat=server 的窗体标记内
--------------------
但是如果在工具栏中拖一个panel到窗体中,
则动态添加checkbox到其中则没有错误
另外如果在动态生成的panel中动态加个label则也没有错误
----------------------
取值问题,好要解决....泣谢...~·!代码如下:
=====================
Dim str As String
Dim cb1 As New CheckBox
Dim cb2 As New CheckBox
Dim lb As New Label
lb.Text = "题目"
cb1.Checked = True
cb1.Text = "选项"
cb2.Checked = True
cb2.Text = "选项"
Panel1.Controls.Add(lb)
Panel1.Controls.Add(New LiteralControl("<br/>"))
Panel1.Controls.Add(cb1)
Dim pR As New Panel
pR.HorizontalAlign = HorizontalAlign.Right
pR.Wrap = True
pR.BackColor = System.Drawing.Color.Gainsboro
Page.Controls.Add(pR)
Dim l As New Label
l.Text = "This panel contains a right justified label."
pR.Controls.Add(l)
pR.Controls.Add(New LiteralControl("<br/>"))
pR.Controls.Add(cb2)
解决方案 »
- 关于把sql里的数据导入到mysql里的问题
- Asp.NET+Access编写的程序在本地测试正常,上传到它间上提示找不到数据库
- <td>循环加到<tr>
- 在哪里添加Page_PreInit事件啊
- oledb连接数据库access出现问题????
- 复制别人网页里面的表格的时候,把width也复制过来了,粘贴的时候 怎么好的替换掉?
- 这么列出今天更新的所有数据
- HyperLink3.ImageUrl中,我设制了图片的路径,要如何设制这个图片的的高和宽呀
- ASP与ASP.net间的问题
- 关于运行本地EXE的问题
- 高手们,我是菜,这个问题是什么错误,如何觖决.
- 框架集内两个页面传值的问题,60分外加10元中国移动的充值卡。
Dim cb1 As New CheckBox
Dim cb2 As New CheckBox
Dim lb As New Label
lb.Text = "题目"
cb1.Text = "选项"
cb2.Text = "选项"
Panel1.Controls.Add(lb)
Panel1.Controls.Add(New LiteralControl("<br/>"))
Panel1.Controls.Add(cb1)
Dim pR As New Panel
pR.HorizontalAlign = HorizontalAlign.Right
pR.Wrap = True
pR.BackColor = System.Drawing.Color.Gainsboro
Page.Controls.Add(pR)
Dim l As New Label
l.Text = "This panel contains a right justified label."
pR.Controls.Add(l)
pR.Controls.Add(New LiteralControl("<br/>"))
pR.Controls.Add(cb2)if not ispostback then
cb1.Checked = True
cb2.Checked = True
end if其次,在按钮事件中如下取值//求取第一个复选框,因为你上面没有赋予此复选框ID,否则你可用findcontrol来搜索更准确
dim chk1 as CheckBox = Ctype(Panel1.Controls(0),CheckBox)
值 = ...
dim chk2 as CheckBox = Ctype(Panel1.Controls(1),CheckBox)
值 = ...
那个程序修改了一下,有什么意义?
试了下,还是不行....
出错的原因应该是:
panel控件pR没有放到
<form method="post" runat="server">
</form>中...
因为如果把cb1和cb2都放到panel中
是没有错误的...
===============
如何解决呢...?
这样,你在添加的时候,写的有问题
Page.Controls.Add(pR)改为
Page.Controls[1].Controls.Add(pR)另外,最好每一个放进去的控件都要有ID命名
=========
要不帮忙把ID加上,我看看,
今早凌晨两点,我加了ID后说我没定义,不能用.
----
郁闷啊!!!~
添加两个radiobutton,怎么用着不爽呢,
两个都可以选上,
选上就不能恢复...
为啥子列?
====================
感冒了,,,,,,,
烦,,,,,
我的毕业设计.....
我把他们放在不同的页面里,
下面把代码呈现给大家,
请大家帮忙,群策群力,
谢了!!!
===================================
第一个:
前台在工具箱拖了一个panel,代号panel1,
在后台动态添加checkbox和radiobutton到panel1上,
出现的错误是,radiobutton只能选中,不能消除选中,
而且两个radiobutton可以同时选中,咋个回事嘛?
代码:html:
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="question.aspx.vb" Inherits="design.WebForm6"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>WebForm6</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="Visual Basic .NET 7.1" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<FONT face="宋体">
<P> </P>
<P>
<asp:Panel id="Panel1" runat="server" Height="112px"></asp:Panel></P>
</FONT>
</form>
</body>
</HTML>
-------------------------------------
aspx.vb:
Public Class WebForm6
Inherits System.Web.UI.Page
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
Dim str As String
Dim cb1 As New RadioButton
Dim cb2 As New CheckBox
Dim cb3 As New RadioButton
Dim lb As New Label
lb.Text = "题目"
'cb1.Checked = True
cb1.Text = "选项"
cb2.Checked = True
cb2.Text = "选项"
cb3.Text = "选项"
Panel1.Controls.Add(lb)
Panel1.Controls.Add(New LiteralControl("<br/>"))
Panel1.Controls.Add(cb1)
Panel1.Controls.Add(New LiteralControl("<br/>"))
Panel1.Controls.Add(cb2)
Panel1.Controls.Add(New LiteralControl("<br/>"))
Panel1.Controls.Add(cb3)
end sub
end class
======================================
第二个问题:在后台动态添加panel,并动态添加checkbox到panel上,
提示错误:类型“CheckBox”的控件“_ctl4”必须放在具有 runat=server 的窗体标记内
但如果添加的是lable而不是checkbox则运行无误
代码如下:
html:
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="subject.aspx.vb" Inherits="design.WebForm7"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>WebForm7</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<FONT face="宋体"></FONT>
</form>
</body>
</HTML>
------------------------
aspx.vb:
Public Class WebForm7
Inherits System.Web.UI.Page
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
Dim pR As New Panel
pR.HorizontalAlign = HorizontalAlign.Right
pR.Wrap = True
pR.BackColor = System.Drawing.Color.Gainsboro
Page.Controls.Add(pR)
Dim l As New Label
l.Text = "This panel contains a right justified label."
pR.Controls.Add(l)
Dim cb2 As New CheckBox
cb2.Text = "选项"
pR.Controls.Add(New LiteralControl("<br/>"))
pR.Controls.Add(cb2)
End SubEnd Class
ok。