62,041
社区成员
发帖
与我相关
我的任务
分享
private void dlManageRanks_ItemCommand(object source, DataListCommandEventArgs e)
{
if(e.CommandName == "Create ")
CreateCommand(source, e);
if(e.CommandName == "update ")
this.Updatecommand(source, e);
if(e.CommandName == "cancel ")
{
this.dlManageRanks.EditItemIndex = -1;
dlManageRanks.DataBind();
}
}
public class ManageRanks : SkinnedForumWebControl
{
protected string skinFileName = "/Admin/skin-ManageRanks.ascx";
protected AspNetForums.Components.SiteSettings settings;
protected string selectedName = string.Empty;
DataList dlManageRanks;
public ManageRanks()
{
if (SkinFilename == null)
SkinFilename = skinFileName;
}
protected override void InitializeSkin(System.Web.UI.Control skin)
{
dlManageRanks = (DataList)skin.FindControl("dlManageRanks");
this.dlManageRanks.EditCommand += new DataListCommandEventHandler(dlManageRanks_EditCommand);
this.dlManageRanks.CancelCommand += new DataListCommandEventHandler(dlManageRanks_CancelCommand);
this.dlManageRanks.DeleteCommand += new DataListCommandEventHandler(dlManageRanks_DeleteCommand);
this.dlManageRanks.UpdateCommand += new DataListCommandEventHandler(dlManageRanks_UpdateCommand);
this.dlManageRanks.ItemCommand += new DataListCommandEventHandler(dlManageRanks_ItemCommand);
// Put user code to initialize the page here
this.dlManageRanks.DataSource = Ranks.GetRanks();
//if (!Page.IsPostBack)
dlManageRanks.DataBind();
}
private void dlManageRanks_EditCommand(object source, DataListCommandEventArgs e)
{
this.dlManageRanks.EditItemIndex = e.Item.ItemIndex;
dlManageRanks.DataBind();
}
private void dlManageRanks_CancelCommand(object source, DataListCommandEventArgs e)
{
this.dlManageRanks.EditItemIndex = -1;
dlManageRanks.DataBind();
}
private void dlManageRanks_DeleteCommand(object source, DataListCommandEventArgs e)
{
Rank rank = (Rank)((ArrayList)dlManageRanks.DataSource)[e.Item.ItemIndex];
Ranks.DeleteRank(rank);
dlManageRanks.EditItemIndex = -1;
//dlManageRanks.DataBind();
Reload();
}
private void dlManageRanks_UpdateCommand(object source, DataListCommandEventArgs e)
{
TextBox txtRankName = (TextBox)e.Item.FindControl("txtRankName");
TextBox txtRankCountMin = (TextBox)e.Item.FindControl("txtRankMinPost");
TextBox txtRankCountMax = (TextBox)e.Item.FindControl("txtRankMaxPost");
TextBox txtRankIconUrl = (TextBox)e.Item.FindControl("txtRankIconUrl");
if (txtRankName == null
|| txtRankCountMin == null
|| txtRankCountMax == null
|| txtRankIconUrl == null)
return;
AspNetForums.Components.Rank r = (Rank)((ArrayList)dlManageRanks.DataSource)[e.Item.ItemIndex];
r.RankName = txtRankName.Text;
r.PostingCountMinimum = Int32.Parse(txtRankCountMin.Text);
r.PostingCountMaximum = Int32.Parse(txtRankCountMax.Text);
r.RankIconUrl = txtRankIconUrl.Text;
Ranks.UpdateRank(r);
dlManageRanks.EditItemIndex = -1;
dlManageRanks.DataBind();
}
private void dlManageRanks_ItemCommand(object source, DataListCommandEventArgs e)
{
if (e.CommandName == "Create")
CreateCommand(source, e);
}
private void CreateCommand(object source, DataListCommandEventArgs e)
{
TextBox txtRankName = (TextBox)e.Item.FindControl("txtNewRankName");
TextBox txtRankCountMin = (TextBox)e.Item.FindControl("txtNewRankMinPost");
TextBox txtRankCountMax = (TextBox)e.Item.FindControl("txtNewRankMaxPost");
TextBox txtRankIconUrl = (TextBox)e.Item.FindControl("txtNewRankIconUrl");
if (txtRankName == null
|| txtRankCountMin == null
|| txtRankCountMax == null
|| txtRankIconUrl == null)
return;
Rank rank = new Rank(0, txtRankName.Text, Int32.Parse(txtRankCountMin.Text), Int32.Parse(txtRankCountMax.Text), txtRankIconUrl.Text);
Ranks.CreateRank(rank);
//DataBind();
Reload();
}
private void Reload()
{
HttpContext.Current.Response.Redirect(Globals.GetSiteUrls().AdminManageRanks, true);
}
}
<span class="forumName">
<% = ResourceManager.GetString("Rank_Title")%>
</span>
<br>
<span class="forumThread">
<% = ResourceManager.GetString("Rank_SubTitle")%>
</span>
<br>
<br>
<asp:DataList ID="dlManageRanks" runat="server" Width="100%" Height="100%">
<HeaderTemplate>
<table id="tblManageRanks" class="tableBorder" cellspacing="1" cellpadding="3" border="0">
<tr>
<td class="column" width="75px">
<% = ResourceManager.GetString("ID") %>
</td>
<td class="column" width="65px">
<% = ResourceManager.GetString("Name")%>
</td>
<td class="column" width="80px">
<% = ResourceManager.GetString("Rank_MinPosts")%>
</td>
<td class="column" width="80px">
<% = ResourceManager.GetString("Rank_MaxPosts")%>
</td>
<td class="column" width="100px">
<% = ResourceManager.GetString("Rank_IconUrl")%>
</td>
<td class="column" width="130px" nowrap>
<% = ResourceManager.GetString("Actions")%>
</td>
</tr>
</HeaderTemplate>
<FooterTemplate>
<tr>
<td class="f">
<% = ResourceManager.GetString("ID")%>
</td>
<td class="fh">
<asp:TextBox runat="server" ID="txtNewRankName" Columns="10"></asp:TextBox></td>
<td class="fh">
<asp:TextBox runat="server" ID="txtNewRankMinPost" Columns="10"></asp:TextBox></td>
<td class="fh">
<asp:TextBox runat="server" ID="txtNewRankMaxPost" Columns="10"></asp:TextBox></td>
<td class="fh">
<asp:TextBox runat="server" ID="txtNewRankIconUrl" Columns="40"></asp:TextBox></td>
<td class="fh">
<asp:Button ID="CreateSmiley" CommandName="Create" Width="60" Text='<%# ResourceManager.GetString("Create")%>'
runat="server"></asp:Button>
</td>
</tr>
</TABLE>
</FooterTemplate>
<ItemTemplate>
<tr>
<td class="f">
<%# DataBinder.Eval(Container.DataItem, "RankId") %>
</td>
<td class="fh">
<%# DataBinder.Eval(Container.DataItem, "RankName") %>
</td>
<td class="fh">
<%# DataBinder.Eval(Container.DataItem, "PostingCountMinimum") %>
</td>
<td class="fh">
<%# DataBinder.Eval(Container.DataItem, "PostingCountMaximum") %>
</td>
<td class="fh">
<asp:Image runat="server" AlternateText='<%# DataBinder.Eval(Container.DataItem, "RankIconUrl") %>'
ImageUrl='<%# Globals.GetSkinPath() + "/images/" + DataBinder.Eval(Container.DataItem, "RankIconUrl") %>'
ID="Image1" />
</td>
<td class="fh">
<asp:Button ID="EditRank" CommandName="Edit" runat="server" Width="60" Text='<%# ResourceManager.GetString("Edit")%>'>
</asp:Button>
<asp:Button ID="DeleteRank" CommandName="Delete" runat="server" Width="60" Text='<%# ResourceManager.GetString("Delete")%>'>
</asp:Button>
</td>
</tr>
</ItemTemplate>
<EditItemTemplate>
<tr>
<td class="f">
<%# DataBinder.Eval(Container.DataItem, "RankId") %>
</td>
<td class="fh">
<asp:TextBox ID="txtRankName" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "RankName") %>'>
</asp:TextBox></td>
<td class="fh">
<asp:TextBox ID="txtRankMinPost" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "PostingCountMinimum") %>'>
</asp:TextBox></td>
<td class="fh">
<asp:TextBox ID="txtRankMaxPost" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "PostingCountMaximum") %>'>
</asp:TextBox></td>
<td class="fh">
<asp:TextBox ID="txtRankIconUrl" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "RankIconUrl") %>'>
</asp:TextBox></td>
<td class="fh">
<asp:Button ID="UpdateRank" Text='<%# ResourceManager.GetString("Update")%>' runat="server"
CommandName="update" Width="60"></asp:Button>
<asp:Button ID="CancelRank" Text='<%# ResourceManager.GetString("Cancel")%>' runat="server"
CommandName="cancel" Width="60"></asp:Button></td>
</tr>
</EditItemTemplate>
</asp:DataList>
private void bind()
{
db sdb = new db();
DataList1.DataSource = sdb.dt("select top 10 * from authors");
DataList1.DataKeyField = "au_id";
DataList1.DataBind();
}
protected void DataList1_EditCommand(object source, DataListCommandEventArgs e)
{
DataList1.EditItemIndex = e.Item.ItemIndex;
bind();
}
protected void DataList1_CancelCommand(object source, DataListCommandEventArgs e)
{
DataList1.EditItemIndex = -1;
bind();
}
protected void DataList1_DeleteCommand(object source, DataListCommandEventArgs e)
{
string id=DataList1.DataKeys[e.Item.ItemIndex].ToString();
db sdb = new db();
string query="delete from authors where au_id='"+id+"'";
if (sdb.sql(query) > 0)
{
Response.Write("<script>return alert('删除成功')");
DataList1.EditItemIndex = -1;
bind();
}
}
protected void DataList1_UpdateCommand(object source, DataListCommandEventArgs e)
{
string id=DataList1.DataKeys[e.Item.ItemIndex].ToString();
string fname = ((TextBox)e.Item.FindControl("TextBox2")).Text;
string city = ((TextBox)e.Item.FindControl("TextBox3")).Text;
db sdb = new db();
string query="update authors set au_fname='"+fname+"',city='"+city+"' where au_id='"+id+"'";
if (sdb.sql(query) > 0)
{
DataList1.EditItemIndex = -1;
bind();
}
}
<asp:DataList ID="DataList1" runat="server" BackColor="White" BorderColor="#999999"
BorderStyle="None" BorderWidth="1px" CellPadding="3" DataKeyField="au_id" GridLines="Vertical"
HorizontalAlign="Center" OnCancelCommand="DataList1_CancelCommand" OnDeleteCommand="DataList1_DeleteCommand"
OnEditCommand="DataList1_EditCommand" OnUpdateCommand="DataList1_UpdateCommand"
RepeatColumns="5" RepeatDirection="Horizontal">
<FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
<SelectedItemStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
<ItemTemplate>
au_id:
<asp:Label ID="au_idLabel" runat="server" Text='<%# Eval("au_id") %>'></asp:Label><br />
au_fname:
<asp:Label ID="au_fnameLabel" runat="server" Text='<%# Eval("au_fname") %>'></asp:Label><br />
city:
<asp:Label ID="cityLabel" runat="server" Text='<%# Eval("city") %>'></asp:Label><br />
<br />
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="edit">修改</asp:LinkButton>
<asp:LinkButton ID="LinkButton2" runat="server" CommandName="delete">删除</asp:LinkButton>
</ItemTemplate>
<EditItemTemplate>
au_id:
<asp:Label ID="Label1" runat="server" Text='<%# Eval("au_id") %>'></asp:Label><br />
au_fname:
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Eval("au_fname") %>'></asp:TextBox><br />
city:
<asp:TextBox ID="TextBox3" runat="server" Text='<%# Eval("city") %>'></asp:TextBox><br />
<br />
<asp:LinkButton ID="LinkButton3" runat="server" CommandName="update">保存</asp:LinkButton>
<asp:LinkButton ID="LinkButton4" runat="server" CommandName="cancel">取消</asp:LinkButton>
</EditItemTemplate>
<AlternatingItemStyle BackColor="Gainsboro" />
<ItemStyle BackColor="#EEEEEE" ForeColor="Black" />
<HeaderTemplate>
</HeaderTemplate>
<HeaderStyle BackColor="#000084" Font-Bold="True" ForeColor="White" />
<FooterTemplate>
</FooterTemplate>
</asp:DataList>