' runat="server"> -6ren">
gpt4 book ai didi

.net - asp :GridView textbox always return blank value

转载 作者:行者123 更新时间:2023-12-04 20:24:23 25 4
gpt4 key购买 nike

我使用以下代码向 gridview 添加了一些文本框

<asp:TemplateField HeaderText="STD<br/>ID">
<ItemStyle BackColor="LightBlue" />
<ItemTemplate>
<div style="font-size:xx-small; overflow:hidden;">
<asp:TextBox ID="txtStandard" EnableViewState="true" Height="10" Font-Size="XX-Small" Width="50" Text='<%# bind("STANDARD_ID") %>' runat="server"></asp:TextBox>
<asp:AutoCompleteExtender ID="AutoCompleteExtenderDemo" runat="server"
TargetControlID="txtStandard" ServiceMethod="GetCompletionList"
MinimumPrefixLength="1" CompletionInterval="1000"
EnableCaching="true" CompletionSetCount="20">
</asp:AutoCompleteExtender>
</div>



</ItemTemplate>
</asp:TemplateField>

我想将更新的值保存到数据库中,但是当我尝试使用访问值时
string strs = ((TextBox)TwoHeadedGridView1.Rows[0].FindControl("txtStandard")).Text;

它总是返回所有行的空白值,下拉列表也会发生同样的事情,它返回我最初选择的值,即在编写下拉框时选择的值,我的 asp 表单上没有重复的 id,这是我的第一个与自定义 gridview 的交互,我想以某种方式让它运行,

任何人都可以建议我任何更正...

我确实检查过其中是否存在任何重复的 ID,

最佳答案

我在这里找到了这个问题的解决方案:
http://www.eggheadcafe.com/software/aspnet/29602882/gridview--cant-get-text.aspx

请记住,网页从根本上说是无状态的!

当您的 GridView触发事件,您的 Page_Load方法执行,然后是处理 GridView 的方法事件执行。我仍然不敢相信自己的眼睛,但似乎即使您手动分配 GridView 中的值数据源到您的文本框,当 GridView.DataBind 时,用户输入的值将被清除方法执行。

简而言之,如果你的代码和我的一样,你的 Page_Load 中有这两行代码方法:

myGridView.DataSource = someDataSet;
myGridView.DataBind();



要解决此问题,请将其更改为以下内容:

if (!IsPostBack)
{
myGridView.DataSource = someDataSet;
myGridView.DataBind();
}



顺便说一下,我在 VB.net 工作,所以请告诉我我已为您正确转换为 C#。我想知道这对你也有效!

关于.net - asp :GridView textbox always return blank value ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2835181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com