datagrid和repeader控件中替换标识值的方法
DataGrid控件中替换标识值的使用:
<asp:DataGridID="dgList"runat="server"Width="100%"AutoGenerateColumns="False"> <Columns> <asp:BoundColumnDataField="COP_G_NO"HeaderText="物料号/成品货号"></asp:BoundColumn> <asp:BoundColumnDataField="QTY"HeaderText="数量"></asp:BoundColumn> <asp:TemplateColumnHeaderText="物料标识"> <ItemTemplate> <%#GetTransType(DataBinder.Eval(Container.DataItem,"FLAG"))%> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:DataGrid> 直接调用后台方法: <asp:TemplateColumnHeaderText="原产地"> <ItemTemplate> <%#(Common.Constant.CountryList.ContainsKey(Eval("COUNTRY")+""))?Common.Constant.CountryList[Eval("COUNTRY")+""]:Eval("COUNTRY")+""%> </ItemTemplate> </asp:TemplateColumn>
publicstringGetTransType(objectobj) { stringtype_flag=Convert.ToString(obj); stringstrReturn=""; switch(type_flag) { case"1":strReturn="在厂产品";break; case"2":strReturn="在厂半成品";break; case"3":strReturn="已出库未报关成品";break; case"I":strReturn="在厂原材料数量";break; case"Y":strReturn="已报关未入库料件数量";break; case"W":strReturn="已入库未报关料件数量";break; default:;break; } returnstrReturn; }
repeader控件中替换标识值的方法:
<asp:RepeaterID="rp_List"runat="server"OnItemCommand="rp_List_ItemCommand"> <ItemTemplate> <tr> <td> <inputid="chk"type="checkbox"name="chkName"runat="server"/> </td> <tdwidth="70"> <asp:HyperLinkNavigateUrl='<%#getLink(Eval("CodeNameCn"),Eval("Guid"))%>'ID="hl_guid" runat="server"><%#Eval("OrderNo")%></asp:HyperLink> </td> <td> <%#Eval("CustomerNo")%><asp:HiddenFieldID="hf_OrderNo"Value='<%#Eval("Guid")%>' runat="server"/> </td> <td> <%#getInOrOut(Eval("IeType"))%> </td> <td> <%#Eval("TradeMode")%> </td> <td> <%#Eval("TotalQuantity")%> </td> <td> <%#Eval("TotalAmount")%> </td> <td> <%#Eval("ShipPeople")%> </td> <td> <%#Eval("ReceivePeople")%> </td> <td> <asp:LinkButtonID="lb_xiadan"runat="server"CommandName="xiadan"><%#getIsShowXiadan(Eval("Status"))%></asp:LinkButton> </td> <td> <%#GetExistService(Eval("HasWMSService"),Eval("HasFreightAgent"),Eval("HasCustomsClearance"))%> </td> <td> <%#Eval("CodeNameCn")%> </td> <td> <%#Convert.ToDateTime(Eval("CreateTime")).ToString("yyyy-MM-dd")%> </td> </tr> </ItemTemplate> </asp:Repeater>
C#后台方法:
publicstringgetLink(objectobjStatus,objectobjGuid) { if(objStatus==null) { return"#"; } elseif(objStatus+""=="未下单") { return"GjmyOrderSave.aspx?guid="+objGuid; } else { return"GjmyOrderDetail.aspx?guid="+objGuid; } }
publicstringGetExistService(objectobjHasWMSService,objectobjHasFreightAgent,objectobjHasCustomsClearance) { stringserviceHtml=""; if(objHasWMSService!=DBNull.Value) { if(Convert.ToBoolean(objHasWMSService)==true) { serviceHtml+="仓库发货"; } } if(objHasFreightAgent!=DBNull.Value) { if(Convert.ToBoolean(objHasFreightAgent)==true) { serviceHtml+="货运代理"; } } if(objHasCustomsClearance!=DBNull.Value) { if(Convert.ToBoolean(objHasCustomsClearance)==true) { serviceHtml+="报关报检"; } } returnserviceHtml; }