【问题标题】:Values GridView in cells单元格中的值 GridView
【发布时间】:2015-03-03 10:33:16
【问题描述】:

我正在尝试获取保存在 GridView 中的字符串值。 当我使用常规的 BoundFields 时,一切正常。我得到任何需要的东西:

string my_value = myGrid.Rows [rowIndex].Cells[1].Text;

但是,一个网格需要在其中一列中有超链接条目。我做到了:

<asp:BoundField DataField="domainName"
  HeaderText="Domain"
  SortExpression="domainName"
  HtmlEncode="false"
  DataFormatString="<a href=DomainConfiguration.aspx?suffix={0}>{0}</a>"

我的 ASPX 页面显示格式正确的超链接。但是,如果我检索单元格的文本,它将返回“example.com”[没有两个额外的斜杠],而不是“example.com "

我需要做什么才能让 GridView 按我想要的方式工作? [是的,我宁愿使用 GridView 而不是其他控件。]

谢谢。

【问题讨论】:

  • 为什么不用asp:HyperLinkField 而不是asp:BoundField

标签: c# asp.net gridview mono


【解决方案1】:

而不是asp:BoundField 来显示炒作链接,最好使用asp:HyperLinkField,例如:

 <Columns>
        <asp:HyperLinkField DataNavigateUrlFields="domainName" HeaderText="domainName" DataNavigateUrlFormatString="DomainConfiguration.aspx?suffix={0}" DataTextField="domainName" />
    </Columns>

要获取该列的字符串值,您应该尝试以下操作:

 string my_value= ((HyperLink)myGrid.Rows[rowIndex].Cells[1].Controls[0]).Text;

【讨论】:

    【解决方案2】:

    而不是你的asp:Bounfield 使用

    <asp:TemplateField>
    <ItemTemplate>
     <asp:HyperLink ID="editLink" runat="server"  onclick='<%#Eval("EditLink") %>'></asp:HyperLink>
    </ItemTemplate>
    </asp:TemplateField>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-02
      • 1970-01-01
      • 2017-06-19
      相关资源
      最近更新 更多