未将对象引用设置到对象的实例

小伙真帅 2013-02-22 09:37:13
cs文件中有一个repeater,然后我在itemDataBound事件中找到一个TextBox控件a,

然后调用一个setVal(ref TextBox tb,ref DataTable dt)事件传入对象。
为什么我在这个函数中对tb进行赋值的时候会出现未将对象引用设置到对象的实例的错误?

void ChannelRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (ListItemType.Item == e.Item.ItemType || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataRowView drv = e.Item.DataItem as DataRowView;
DataTable dt = GetKeywords(drv["ID"]);
TextBox tb = e.Item.FindControl("KeyWords");
SetVal(ref tb,ref dt)


void SetVal(ref TextBox tb,ref DataTable dt){
tb.Text = ""; //设置空值也会报错。
}

...全文
142 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
小伙真帅 2013-02-22
  • 打赏
  • 举报
回复
抱歉,问题已经查到了。原来我把这个控件写到内层的一个repeater中去了。导致找不到控件。已解决这个问题。结帖
枫c_2012 2013-02-22
  • 打赏
  • 举报
回复
一般是空对象照成的、、你看看tb这个对象、在 if (ListItemType.Item == e.Item.ItemType || e.Item.ItemType == ListItemType.AlternatingItem) { DataRowView drv = e.Item.DataItem as DataRowView; DataTable dt = GetKeywords(drv["ID"]); TextBox tb = e.Item.FindControl("KeyWords"); SetVal(ref tb,ref dt) } 是否真的能查询到
still_melody 2013-02-22
  • 打赏
  • 举报
回复
TextBox tb = (TextBox)e.Item.FindControl("KeyWords"); 至于GetKeywords(drv["ID"])不知道你这个方法返回的是不是datatbale

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧