- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我收到此错误:无法将“System.Web.UI.LiteralControl”类型的对象转换为“System.Web.Controls.TextBox”类型
我从 ASPX 页面中的查询字符串输入文本输入框,代码如下:
<EditItemTemplate>
<asp:TextBox ID="GV_Post_ID" runat="server" text='<%# Request.QueryString["Post_ID"] %>'></asp:TextBox>
</EditItemTemplate>
但是当我运行它时,它停在这里:
cmd.Parameters.Add("@Post_ID", SqlDbType.VarChar).Value = ((TextBox)GV_InlineEditing.Rows[0].Cells[2].Controls[0]).Text;
我得到了上面的错误。这是背后的代码:
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DSRConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "INSERT INTO RCA_Events(Post_ID, Date, Description) VALUES(@Post_ID, @Date, @Description)";
cmd.Parameters.Add("@Post_ID", SqlDbType.VarChar).Value = ((TextBox)GV_InlineEditing.Rows[0].Cells[2].Controls[0]).Text;
cmd.Parameters.Add("@Date", SqlDbType.VarChar).Value = ((TextBox)GV_InlineEditing.Rows[0].Cells[3].Controls[0]).Text;
cmd.Parameters.Add("@Description", SqlDbType.VarChar).Value = ((TextBox)GV_InlineEditing.Rows[0].Cells[4].Controls[0]).Text;
请注意,如果我从 ASPX 页面中删除查询字符串,然后手动插入该值,那么它就可以工作。请。帮助。谢谢
最佳答案
问题出在这里:
(TextBox)GV_InlineEditing.Rows[0].Cells[2].Controls[0]
该单元格中的第一个控件不是您认为的 TextBox
。假设 GV_InlineEditing.Rows[0]
已安全地为您获取所需的行。做这样的事情:
TextBox myTextBox = GV_InlineEditing.Rows[0].FindControl("GV_Post_ID") as TextBox;
cmd.Parameters.Add("@Post_ID", SqlDbType.VarChar).Value = myTextBox.Text;
这样的代码可以更安全:
TextBox myTextBox = GV_InlineEditing.Rows[0].FindControl("GV_Post_ID") as TextBox;
if (myTextBox != null)
{
cmd.Parameters.Add("@Post_ID", SqlDbType.VarChar).Value = myTextBox.Text;
}
else
{
// Do something here. Default value for the post id?
}
关于asp.net - 无法转换类型为 ‘System.Web.UI.LiteralControl’ 的对象错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12979100/
首先看一个aspx文件里的部分内容: 复制代码代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transiti
我有一个动态表,其中包含来 self 的 asp.net 应用程序的用户(使用成员(member)级别)。我试图在每个 Angular 色单元格内添加一个控件,以便使用 javascript 打开弹出
我实际上正在尝试从代码隐藏中创建一个 Panel,其中包含一些服务器控件,为此我使用的是 LiteralControl 但 LiteralControl 不适用于服务器控制,而这正是我在这种情况下所需
我需要从 LiteralControl 中读取 href 并向其添加一些属性: 标记; click me 这是我尝试过的: string url= "bob.com"; var myAnchor =
这两个控件的正确用法是什么?有时我会在后面的代码中构建 HTML。有时我想输出空白,结果我做了这样的事情。 const string twoSpaces = " "; p.Con
我已经在 ASP.NET WebForms 中创建了一个基本页面,我想知道为什么 ASP.NET 跟踪中出现大量文字控件。这是一张图片。 谢谢。 最佳答案 所有文本都会变成 Literals由编译引擎
我收到此错误:无法将“System.Web.UI.LiteralControl”类型的对象转换为“System.Web.Controls.TextBox”类型 我从 ASPX 页面中的查询字符串输入文
这是我在这个网站上提出的第一个问题,所以对于我提前做的任何错误,我深表歉意,不过我会尽量提出这个问题。 我发现我的问题有点难以解释,但可以归结为: 我有一大串 HTML,它是通过从 Web 服务检索
我是一名优秀的程序员,十分优秀!