/*引导排序列表*/
select * from explanation_file_recommendation
order by orders desc
/*向下*/
SELECT TOP 1 *
FROM explanation_file_recommendation
WHERE (orders < 5)
ORDER BY orders desc
/*向上*/
SELECT TOP 1 *
FROM explanation_file_recommendation
WHERE (orders > 10)
ORDER BY orders
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
namespace DataGridTest
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
public int RowCount;
protected System.Web.UI.WebControls.DataGrid DataGrid1;
protected System.Web.UI.HtmlControls.HtmlTable Table2;
protected System.Web.UI.WebControls.Button btnTiSub;
protected System.Web.UI.WebControls.Button btnTiCan;
protected Diablo.WebControls.CalendarSelector calbegin1;
protected Diablo.WebControls.CalendarSelector calover1;
string strConn = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
this.Table2.Visible=false;
DataBindDataGrid();
}
}
private void DataBindDataGrid()
{
this.DataGrid1.DataSource=GridData();
DataGrid1.DataBind();
foreach(DataGridItem d in this.DataGrid1.Items)
{
if(d.ItemIndex == 0)
{
LinkButton lt = (LinkButton)this.DataGrid1.Items[d.ItemIndex].Cells[6].FindControl("linbtnUp");
lt.Enabled = false;
}
else if(d.ItemIndex == this.DataGrid1.Items.Count-1)
{
LinkButton lt = (LinkButton)this.DataGrid1.Items[d.ItemIndex].Cells[6].FindControl("linbtnDown");
lt.Enabled = false;
}
if(d.ItemIndex == 0)
{
LinkButton lb = (LinkButton)this.DataGrid1.Items[d.ItemIndex].Cells[7].FindControl("TakeTop");
lb.Enabled = false;
}
if(d.ItemIndex == this.DataGrid1.Items.Count-1)
{
LinkButton lb = (LinkButton)this.DataGrid1.Items[d.ItemIndex].Cells[7].FindControl("TakeLast");
lb.Enabled = false;
}
}
}
private DataSet GridData()
{
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
return dataHelper.ExecuteDataSet("select er.id,el.name,er.orders,er.start_time,er.end_time from explanation_file_recommendation er inner join explanation_file_list el on er.file_id = el.id order by orders desc");
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.DataGrid1.ItemCreated += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemCreated);
this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand_1);
this.btnTiSub.Click += new System.EventHandler(this.btnTiSub_Click);
this.btnTiCan.Click += new System.EventHandler(this.btnTiCan_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void UpdataOrders(float a)//这是向上翻
{
int up=UprFloat(a);
int aid=Fromordersfindid(a);
float t=Fromidfindorders(up);
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
string sqlst1 = "update explanation_file_recommendation set orders = ' "+t+" ' where id ="+ aid;
string sqlst2 = "update explanation_file_recommendation set orders = '"+ a +"' where id ="+ up;
dataHelper.ExecuteNonQuery(sqlst1+sqlst2);
}
private int UprFloat(float float1)//向上id
{
int t1=0;
string sqlst3 = "SELECT TOP 1 (id) FROM explanation_file_recommendation WHERE (orders > '"+float1+"') ORDER BY orders";
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
System.Data.DataTable dt = dataHelper.ExecuteDataSet(sqlst3).Tables[0];
t1 = int.Parse(dt.Rows[0]["id"].ToString());
return t1;
}
private void DownDataOrders(float a1)//这是向下翻
{
int down=DownrFloat(a1);
int a1id=Fromordersfindid(a1);
float t1=Fromidfindorders(down);
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
string sqlst1 = "update explanation_file_recommendation set orders = '"+t1+" ' where id ="+ a1id;
string sqlst2 = "update explanation_file_recommendation set orders = '"+ a1 +"' where id ="+ down;
dataHelper.ExecuteNonQuery(sqlst1+sqlst2);
}
private int DownrFloat(float float2)//向下id
{
int t2=0;
string sqlst3 = "SELECT TOP 1 (id) FROM explanation_file_recommendation WHERE (orders < '"+float2+"') ORDER BY orders desc";
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
System.Data.DataTable dt = dataHelper.ExecuteDataSet(sqlst3).Tables[0];
t2 = int.Parse(dt.Rows[0]["id"].ToString());
return t2;
}
public void OwnDelete(int id)
{
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
dataHelper.ExecuteNonQuery("delete from explanation_file_recommendation where id ="+id.ToString());
}
private int Fromordersfindid(float orders)
{
int reid=0;
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
System.Data.DataTable dt = dataHelper.ExecuteDataSet("select id from explanation_file_recommendation where orders='"+orders+"'").Tables[0];
reid = int.Parse(dt.Rows[0]["id"].ToString());
return reid;
}
private float Fromidfindorders(int id)
{
float diaorders=0;
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
System.Data.DataTable dt = dataHelper.ExecuteDataSet("select orders from explanation_file_recommendation where id='"+id+"'").Tables[0];
diaorders = float.Parse(dt.Rows[0]["orders"].ToString());
return diaorders;
}
private void DataGrid1_ItemCommand_1(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
int id=int.Parse(this.DataGrid1.DataKeys[e.Item.ItemIndex].ToString());
float fileID = Fromidfindorders(id);
ViewState["fileID"] = fileID;
ViewState["id"] = id;
if(e.CommandName=="diaup")
{
UpdataOrders(fileID);
DataBindDataGrid();
}
if(e.CommandName=="diadown")
{
DownDataOrders(fileID);
DataBindDataGrid();
}
if(e.CommandName == "Delete")
{
string diadelstr="你已经删除了记录!";
ShowAlert(diadelstr);
OwnDelete(id);
this.DataGrid1.DataSource=GridData();
DataSet ds=(DataSet)DataGrid1.DataSource;
int count=ds.Tables[0].Rows.Count;
int value=(double)count%(double)DataGrid1.PageSize>0?count/DataGrid1.PageSize+1:count/DataGrid1.PageSize;
if(DataGrid1.CurrentPageIndex>=value)
DataGrid1.CurrentPageIndex--;
DataBindDataGrid();
}
if(e.CommandName=="TakeToTop")
{
float needmove=RemaxOrders();
updatebecomefirst(fileID,needmove);
DataBindDataGrid();
}
if(e.CommandName=="TakeToLast")
{
float needmove=ReminOrders();
downdatebecomelast(fileID,needmove);
DataBindDataGrid();
}
if(e.CommandName=="TimeSet")
{
this.DataGrid1.Visible=false;
this.Table2.Visible=true;
}
}
}
private float RemaxOrders()
{
float tmaxorders=0;
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
System.Data.DataTable dt = dataHelper.ExecuteDataSet("select top 1(orders) from explanation_file_recommendation order by orders desc").Tables[0];
tmaxorders = float.Parse(dt.Rows[0]["orders"].ToString());
return tmaxorders;
}
private void updatebecomefirst(float a,float b)
{
float b1=b+1;
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
string sqlst1 = "update explanation_file_recommendation set orders = '"+b1+" ' where orders ="+ a;
dataHelper.ExecuteNonQuery(sqlst1);
}
private float ReminOrders()
{
float tminorders=0;
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
System.Data.DataTable dt = dataHelper.ExecuteDataSet("select top 1(orders) from explanation_file_recommendation order by orders ").Tables[0];
tminorders = float.Parse(dt.Rows[0]["orders"].ToString());
return tminorders;
}
private void downdatebecomelast(float a,float b)
{
float b1=b-(float)0.1;
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
string sqlst1 = "update explanation_file_recommendation set orders = '"+b1+" ' where orders ="+ a;
dataHelper.ExecuteNonQuery(sqlst1);
}
private void btnfirst_Click(object sender, System.EventArgs e)
{
System.Web.UI.WebControls.CheckBox chkBox;
String sID=null;
float town=0;
float needmove=0;
try
{
foreach(DataGridItem oDataGridItem in DataGrid1.Items)
{
chkBox = (CheckBox)oDataGridItem.FindControl("chkBox");
if(chkBox.Checked)
{
sID = ((Label)(oDataGridItem.FindControl("lborders"))).Text;
}
}
town=float.Parse(sID);
needmove=RemaxOrders();
updatebecomefirst(town,needmove);
}
catch(System.Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
DataBindDataGrid();
}
}
private void btnlast_Click(object sender, System.EventArgs e)
{
System.Web.UI.WebControls.CheckBox chkBox;
String sID=null;
float town=0;
float needmove=0;
foreach(DataGridItem oDataGridItem in DataGrid1.Items)
{
chkBox = (CheckBox)oDataGridItem.FindControl("chkBox");
if(chkBox.Checked)
{
sID = ((Label)(oDataGridItem.FindControl("lborders"))).Text;
}
}
town=float.Parse(sID);
needmove=ReminOrders();
downdatebecomelast(town,needmove);
DataBindDataGrid();
}
private void btnTiSub_Click(object sender, System.EventArgs e)
{
UpdateTime(Diaid,this.calbegin1.Text.Trim(),this.calover1.Text.Trim());
DataBindDataGrid();
this.DataGrid1.Visible=true;
this.Table2.Visible=false;
}
private void UpdateTime(int fl,string a,string b)
{
DateTime at=new DateTime();
DateTime bt=new DateTime();
at=Convert.ToDateTime(a);
bt=Convert.ToDateTime(b);
DiabloDotNet.Data.DataHelper dataHelper = new DiabloDotNet.Data.DataHelper("TourismIndustryWebsite");
string sqlst1 = "update explanation_file_recommendation set start_time = '"+at+" ',end_time = '"+bt+" ' where id ="+ fl;
dataHelper.ExecuteNonQuery(sqlst1);
}
public void ShowAlert(string content)
{
string alertcontent = "alert('" + content.Replace("//","////") + "');";
alertcontent = "<script>" + alertcontent + "</script>";
Page p = (Page)System.Web.HttpContext.Current.Handler;
p.RegisterStartupScript("alert",alertcontent);
}
private void btnTiCan_Click(object sender, System.EventArgs e)
{
DataBindDataGrid();
this.DataGrid1.Visible=true;
this.Table2.Visible=false;
}
private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
TextBox chk_Value;
chk_Value=(TextBox)e.Item.Cells[0].FindControl("chk_Value");
chk_Value.Text=this.DataGrid1.DataKeys[e.Item.ItemIndex].ToString();
((LinkButton)e.Item.FindControl("linbtnCancel")).Attributes.Add("OnClick","return Audit();");
}
}
public float FileID
{
get
{
if(ViewState["fileID"] == null)
return 0;
else if(ViewState["fileID"].ToString() == string.Empty)
return 0;
else
{
return float.Parse(ViewState["fileID"].ToString());
}
}
set
{
ViewState["fileID"] = value;
}
}
public int Diaid
{
get
{
if(ViewState["id"] == null)
return 0;
else if(ViewState["id"].ToString() == string.Empty)
return 0;
else
{
return int.Parse(ViewState["id"].ToString());
}
}
set
{
ViewState["id"] = value;
}
}
}
}
引导排序列表
最新推荐文章于 2025-07-09 13:59:32 发布