怎么根据girdview某个字段值,来判断 浏览单据的不同种类超链接,
如表
申请书种类     操作
  A           浏览链接 指向check_a.aspx?djh={0}
  B           浏览链接 指向check_b.aspx?djh={0}
  C           浏览链接 指向check_c.aspx?djh={0}
  D           浏览链接 指向check_d.aspx?djh={0}html页                <asp:BoundField DataField="djlx" HeaderText="申请单类别">
                <ItemStyle HorizontalAlign="Center" Width="100px" Wrap="False" />
                </asp:BoundField>
                <asp:TemplateField HeaderText="审核">
                    <ItemTemplate>
                        <asp:HyperLink ID="HyperLink1" runat="server">HyperLink</asp:HyperLink>
                    </ItemTemplate>
                </asp:TemplateField>
C#                <asp:HyperLinkField DataNavigateUrlFields="djh" 
                    DataNavigateUrlFormatString="check_a.aspx?djh={0}" Text="浏览签核单据" 
                    HeaderText="签核操作">
                <ItemStyle HorizontalAlign="Center" Width="100px" Wrap="False" />
                </asp:HyperLinkField>
我要把"check_a.aspx?djh={0}" 变成动态链接,根据申请单种类A、B、C  变成"check_a.aspx?djh={0}""check_b.aspx?djh={0}""check_c.aspx?djh={0}"

解决方案 »

  1.   


    //gridview的row_databound()事件中:HyperLink  hf= (HyperLink)e.Rows.FindControl("HyperLink1");
    swith(e.Rows.cell["申请单类别所在的行号"])
    {
      case "A": 
      hf.NavigateUrl=check_a.aspx?djh={0};
      break;
      
       case "B": 
      hf.NavigateUrl=check_a.aspx?djh={0};
      break;  case "C": 
      hf.NavigateUrl=check_c.aspx?djh={0};
      break;  case "D": 
      hf.NavigateUrl=check_d.aspx?djh={0};
      break;  default:
      hf.NavigateUrl=check_a.aspx?djh={0};
       break;  
    }
      

  2.   


    swith(e.Rows.cell["申请单类别所在的行号"].Text)  //不好意思,代码手打
      

  3.   

    <asp:Lable ID="lbl" runat="server" Text='<%# Eval("申请单类别")%>'></asp:Lable>
    <asp:LinkButton ID="HyperLink1" runat="server" CommandArgument='<%# Container.DataItemIndex %>' CommandName="HyperLink">HyperLink</asp:LinkButton>
    protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
    {
    if (e.CommandName == "HyperLink")
    {
    string str= null;
                str= ((Lable )GridView1.Rows[Convert.ToInt32(e.CommandArgument.ToString())].FindControl("lbl")).Text.Trim();
    if(str=="A")
    Response.Redirect("check_a.aspx?djh=" + {0});
    else if(str=="B")
    Response.Redirect("check_b.aspx?djh=" + {0});
    else if(str=="C")
    Response.Redirect("check_c.aspx?djh=" + {0});
    else if(str=="D")
    Response.Redirect("check_d.aspx?djh=" + {0});
    }
    }
      

  4.   

    <%#方法名(Eval("aaaa")) %>public string 方法名(object aaa)
    {}