Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
namespace HyeyBussiness.NewInvestment
{
public partial class InvestmentSearch : System.Web.UI.UserControl
{
#region 初始化
DataView dv;
/// <summary>
/// 层次分割符
/// </summary>
const string STR_TREENODE = "┆┄";
/// <summary>
/// ID
/// </summary>
const string STR_ID = "ID";
/// <summary>
/// Parent ID
/// </summary>
const string STR_PARENTID = "PID";
/// <summary>
/// Type Name
/// </summary>
const string STR_DISPLAYNAME = "Name";
#endregion
#region 加载页面
protected void Page_Load(object sender, EventArgs e)
{
if (this.Page.IsPostBack == false)
{
#region 初始化下拉列表
DataTable dt = new DataTable();
dt = null;
if (this.Query_ID != null)
{
dt = ClassNameSource(this.Query_ID);
}
else
{
dt = ClassNameSource("");
}
dv = new DataView(dt);
if (dt != null)
{
dv.Sort = STR_PARENTID;
}
string schar = STR_TREENODE;
if (this.Query_ID == null || this.Query_ID == string.Empty)
{
if (this.drpListTree.Items.FindByValue("-1") == null)
this.drpListTree.Items.Insert(0, new ListItem("--请选择--", "-1"));
}
if (dt != null && dv.Table.Rows.Count > 0)
{
RecursBind(0, ref schar);
}
#endregion
}
}
#endregion
#region 下拉列表
/// <summary>
/// 递归绑定
/// DropDownList
/// hyey.wl
/// 2010-07-29
/// </summary>
/// <param name="pid"></param>
/// <param name="schar"></param>
private void RecursBind(int pid, ref string schar)
{
DataRowView[] rows = dv.FindRows(pid);
if (rows.Length == 0) schar = STR_TREENODE;
foreach (DataRowView row in rows)
{
if (pid != 0)
{
schar += STR_TREENODE;
}
this.drpListTree.Items.Add(new ListItem(schar + row[STR_DISPLAYNAME].ToString(), row["Code"].ToString()));
RecursBind(Convert.ToInt32(row[STR_ID]), ref schar);
}
schar = STR_TREENODE;
}
/// <summary>
/// Class Name
/// </summary>
/// <param name="strChannel">ID</param>
/// <returns>Data Table Source</returns>
private DataTable ClassNameSource(string strID)
{
string strSql = string.Empty;
if (strID.Trim().Length > 0)
{
strSql = "SELECT ID ,PID,Name,Code FROM dbo.typetab where PID != -1 AND PID = '" + strID.Replace("'", "").Replace("-", "") + "'";
}
else
{
strSql = "SELECT ID ,PID,Name,Code FROM dbo.typetab where PID !=-1 ";
}
DataSet ds = HyeyClass.DALFactory.DataAccess.CreateComm().GetList(strSql);
DataTable dt = ds.Tables[0];
if (ds != null && ds.Tables[0].Rows.Count > 0)
return dt;
else
return null;
}
#endregion
#region 查询的参数
/// <summary>
/// 类型编号
/// </summary>
protected string Query_ID
{
get
{
if (Request.Params["ID"] != null && Request.Params["ID"].ToString() != string.Empty)
{
return this.Request.Params["ID"].Trim();
}
else
{
return null;
}
}
}
#endregion
}
}

浙公网安备 33010602011771号