⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 specialcategoryorder.aspx.cs

📁 动易SiteFactory&#8482 网上商店系统1.0源代码
💻 CS
字号:
namespace PowerEasy.WebSite.Admin.Contents
{
    using PowerEasy.AccessManage;
    using PowerEasy.Common;
    using PowerEasy.Contents;
    using PowerEasy.Controls;
    using PowerEasy.Enumerations;
    using PowerEasy.Model.Contents;
    using PowerEasy.Templates;
    using PowerEasy.Web.UI;
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Web.UI.WebControls;

    public class SpecialCategoryOrder : AdminPage
    {
        protected Button EBtnSetOrderId;
        protected ExtendedGridView EgvSpecialCategory;
        protected ObjectDataSource OdsSpecialCategory;
        protected ExtendedSiteMapPath SmpNavigator;

        protected void EBtnSetOrderId_Click(object sender, EventArgs e)
        {
            List<SpecialCategoryInfo> list = new List<SpecialCategoryInfo>();
            foreach (GridViewRow row in this.EgvSpecialCategory.Rows)
            {
                DropDownList list2 = (DropDownList) row.FindControl("DropOrderId");
                int specialCategoryId = (int) this.EgvSpecialCategory.DataKeys[row.RowIndex].Value;
                int num2 = DataConverter.CLng(list2.SelectedValue);
                SpecialCategoryInfo specialCategoryInfoById = Special.GetSpecialCategoryInfoById(specialCategoryId);
                specialCategoryInfoById.OrderId = num2;
                if (!specialCategoryInfoById.IsNull)
                {
                    list.Add(specialCategoryInfoById);
                }
            }
            Special.OrderSpecialCategory(list);
            this.EgvSpecialCategory.DataBind();
            IncludeFile.CreateIncludeFileByAssociateType(AssociateType.Special);
            base.Response.Write("<script type='text/javascript'>parent.frames[\"left\"].location.reload();</script>");
            AdminPage.WriteSuccessMsg("专题类别排序成功!", "SpecialCategoryOrder.aspx");
        }

        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            RolePermissions.AccessCheck(OperateCode.SpecialManage);
        }

        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void Page_PreRender(object sender, EventArgs e)
        {
            int count = this.EgvSpecialCategory.Rows.Count;
            if (count > 0)
            {
                string[] strArray = new string[count];
                ListItemCollection items = new ListItemCollection();
                for (int i = 1; i <= count; i++)
                {
                    ListItem item = new ListItem(i.ToString(), i.ToString());
                    items.Add(item);
                }
                foreach (GridViewRow row in this.EgvSpecialCategory.Rows)
                {
                    DropDownList list = (DropDownList) row.FindControl("DropOrderId");
                    list.DataSource = items;
                    list.DataBind();
                    list.SelectedIndex = row.RowIndex;
                    strArray[row.RowIndex] = list.ClientID;
                    list.Attributes.Add("onchange", "Reorder(this, " + row.RowIndex.ToString() + "," + count.ToString() + ")");
                }
                StringBuilder builder = new StringBuilder();
                builder.Append("<script language=\"JavaScript\" type=\"text/JavaScript\">");
                builder.Append("var arrId = new Array(");
                for (int j = 0; j < count; j++)
                {
                    builder.Append("\"" + strArray[j] + "\",");
                }
                builder.Remove(builder.Length - 1, 1);
                builder.Append(");\n");
                builder.Append("function Reorder(eSelect, iCurrentField, numSelects)\n");
                builder.Append("{\n");
                builder.Append("    var eForm = eSelect.form;\n");
                builder.Append("    var iNewOrder = eSelect.selectedIndex + 1;\n");
                builder.Append("    var iPrevOrder;\n");
                builder.Append("    var positions = new Array(numSelects);\n");
                builder.Append("    var ix;\n");
                builder.Append("    for (ix = 0; ix < numSelects; ix++)\n");
                builder.Append("    {\n");
                builder.Append("            positions[ix] = 0;\n");
                builder.Append("    }\n");
                builder.Append("    for (ix = 0; ix < numSelects; ix++)\n");
                builder.Append("    {\n");
                builder.Append("            positions[eSelect.form[arrId[ix].toString()].selectedIndex] = 1;\n");
                builder.Append("    }\n");
                builder.Append("    for (ix = 0; ix < numSelects; ix++)\n");
                builder.Append("    {\n");
                builder.Append("            if (positions[ix] == 0)\n");
                builder.Append("            {\n");
                builder.Append("                    iPrevOrder = ix + 1;\n");
                builder.Append("                    break;\n");
                builder.Append("            }\n");
                builder.Append("    }\n");
                builder.Append("    if (iNewOrder != iPrevOrder)\n");
                builder.Append("    {\n");
                builder.Append("            var iInc = iNewOrder > iPrevOrder? -1:1\n");
                builder.Append("            var iMin = Math.min(iNewOrder, iPrevOrder);\n");
                builder.Append("            var iMax = Math.max(iNewOrder, iPrevOrder);\n");
                builder.Append("            for (var iField = 0; iField < numSelects; iField++)\n");
                builder.Append("            {\n");
                builder.Append("                    if (iField != iCurrentField)\n");
                builder.Append("                    {\n");
                builder.Append("                            if (eSelect.form[arrId[iField].toString()].selectedIndex + 1 >= iMin && eSelect.form[arrId[iField].toString()].selectedIndex + 1<= iMax)\n");
                builder.Append("                            {\n");
                builder.Append("                                    eSelect.form[arrId[iField].toString()].selectedIndex += iInc;\n");
                builder.Append("                            }\n");
                builder.Append("                    }\n");
                builder.Append("            }\n");
                builder.Append("    }\n");
                builder.Append("}\n");
                builder.Append("</script>\n");
                this.Page.ClientScript.RegisterClientScriptBlock(base.GetType(), "Order", builder.ToString());
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -