asp.netでの各種データバインド使用


以前のasp.net学習ノートをめくってみると、Gridviewのデータバインドの使用について多くのことを発見しました.
1、Gridview時間フォーマット
<asp:BoundField DataField="Adddate" DataFormatString="{0:d}" HeaderText="  " />

2、バックグラウンド関数のバインド
<asp:TemplateField HeaderText="    ">
<ItemTemplate>
 <%# Convert.ToInt32(Eval("LastReplyId")) == 0 ? "    " : getUsername(Eval("LastReplyId").ToString())%>                                
</ItemTemplate>
<HeaderStyle Height="20px" Width="20%" />
<ItemStyle Height="30px" HorizontalAlign="Center" />
</asp:TemplateField>
public string getUsername(string ReplyId)
{
   return dt.Rows[0][1].ToString() + " by:" + dt.Rows[0][0].ToString();
}

3、ページデータバインド
<asp:LinkButton ID="lbModify" runat="server" PostBackUrl='<%# "~/modifyGoods.aspx?id="+Eval("id") %>' >  </asp:LinkButton>

<asp:Label ID="Label1" runat="server" Text='<%# Convert.ToInt32(Eval("istop"))==0?" ":" " %>'></asp:Label>

<asp:Label ID="Label2" runat="server" Text='<%# Convert.ToDateTime(Eval("creatime")).ToString("yyyy-MM-dd") %>'></asp:Label>

<a href="notice.aspx?id=<%# Eval("id") %>"><%# Eval("title").ToString().Length>9?Eval("title").ToString().Substring(0,8)+"..":Eval("title").ToString() %></a>

4、gridviewでlinkbuttonバインドCommandArgument
<asp:TemplateField HeaderText="  ">
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
<HeaderStyle Font-Bold="False" Width="90px" />
<ItemTemplate>
<asp:LinkButton ID="lbModify" runat="server" CommandArgument='<%# Eval("id") %>' 
  oncommand="lbModify_Command" >    </asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
string id = e.CommandArgument.ToString();

5、ネストされた3つの演算子をバインドする
<asp:TemplateField HeaderText="    ">
<HeaderStyle Font-Bold="False" Width="50px" />
<ItemStyle HorizontalAlign="Center" />
<ItemTemplate>
  <asp:Label ID="Label1" runat="server" Text='<%# Convert.ToInt32(Eval("buyType"))==0?"    ":Convert.ToInt32(Eval("buyType"))==1?"    ":"    " %>'></asp:Label>
</ItemTemplate>
<FooterStyle BorderColor="#D6EFF8" BorderStyle="Solid" />
</asp:TemplateField>

6、Gridview通貨フォーマット
<asp:BoundField DataField="price" DataFormatString="{0:C}" HeaderText="  ">
<HeaderStyle Font-Bold="False" Width="45px" />
<ItemStyle HorizontalAlign="Center" />
<FooterStyle BorderColor="#D6EFF8" BorderStyle="Solid" />
</asp:BoundField>

7、javascript関数とパラメータのバインド
<asp:TemplateField HeaderText="  ">
<ItemTemplate>
<a href="javascript:void(0)" onclick='<%# "openWindow(\""+ Eval("empId").ToString() +"\")" %>' id="btn-check">
  </a>
</ItemTemplate>
<ItemStyle Width="40px" />
</asp:TemplateField>

まずこんなに多いのに,ちょっと散らかっているから,間に合わせてみよう.