【问题标题】:ASP.Net C# How to find a control in ListviewASP.Net C# 如何在 Listview 中查找控件
【发布时间】:2017-09-25 03:06:05
【问题描述】:

我想在列表视图的选定行中找到一个控件,我可以这样做:

lv_ListviewTest.Items(lv_ListviewTest.SelectedIndex).FindControl("ControlName")

我拥有的是:

if (e.CommandName == "Select")
        {
            var ctrl = (HtmlContainerControl)e.Item.FindControl("area");
            ctrl.Attributes["style"] = "background-color:LightSkyBlue; color:Black; padding:0px;";

        }

我可以在Itemcommand上做到,但是我不知道如何在页面重新加载时触发itemcommand。

我想要做的是:当一个按钮(不是列表视图上的按钮)单击时,页面重新加载并且焦点将停止在列表视图的按钮上。

非常感谢。

【问题讨论】:

  • 在哪种情况下你想从列表视图中找到控件
  • 希望可以在listview indexchanged上完成

标签: c# asp.net listview


【解决方案1】:

【讨论】:

  • 其实我可以在 itemcommand 上做,但我想在 indexchanged 上做。让我在我的问题中添加一些代码......
【解决方案2】:

在按钮单击外部按钮的事件中添加以下代码

 protected void MyButton_Click(object sender, EventArgs e)
    {
        foreach (ListViewItem  item in MyListView.Items)
                {

                    var ctrl = (HtmlContainerControl)item.FindControl("area");
                    ctrl.Attributes["style"] = "background-color:LightSkyBlue; color:Black; padding:0px;";


                }
    }

【讨论】:

  • 感谢您的回复。但我不明白这一点: DropDownList innerDropdown = (DropDownList)row.FindControl("innedDropedDOwnID");并且行上有一个编译错误(我将其更改为 Item 可能是因为它不是 DropDownList?)而且我认为应该有类似“If (MyListView.selected)”的东西?
  • 我已经编辑了我的代码并删除了它..你也可以删除它它会起作用
  • 获取选中的项目你可以看到它forums.asp.net/t/…
  • 对不起,不懂javascript,setVal总是弹出“1”?
【解决方案3】:

哦,我发现我可以使用 SelectedIndex 和 Session 变量来存储它:

选择项目时:

protected void lv_ListviewTest_SelectedIndexChanged(object sender, EventArgs e)
    {
        Session["SelectedIndex"] = lv_ListviewTest.SelectedIndex;
    }

当点击另一个按钮时:

protected void cmd_OtherButton_Click(object sender, EventArgs e)
    {
        ...............
        Button focusbutton = (Button)lv_ListviewTest.Items[Convert.ToInt16(Session["SelectedIndex"])].FindControl("MyControlLabel");
        focusbutton.Focus();
    }

所以我可以让我的列表视图显示我之前选择的内容,就像 ensurevisible 一样。

【讨论】:

    猜你喜欢
    • 2013-01-31
    • 1970-01-01
    • 2011-08-07
    • 2010-10-11
    • 1970-01-01
    • 2010-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多