discussion.ascx.cs
来自「三层架构的.net源码三层架构的.net源码」· CS 代码 · 共 127 行
CS
127 行
using System;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace MyStarterKit.Portal.Web
{
/// <summary>
/// Discussion 的摘要说明。
/// 显示讨论信息的用户模板控件
/// </summary>
public class Discussion : PortalModuleControl
{
protected System.Web.UI.WebControls.DataList TopLevelList;
private void Page_Load(object sender, System.EventArgs e)
{
if (Page.IsPostBack == false)
{
// 绑定数据
BindList();
}
}
/// <summary>
/// 绑定数据
/// </summary>
private void BindList()
{
// 获取本模块的全部讨论信息
DiscussionDB discuss = new DiscussionDB();
TopLevelList.DataSource = discuss.GetTopLevelMessages(ModuleId);
TopLevelList.DataBind();
}
/// <summary>
/// 展开项下的内容
/// </summary>
/// <returns></returns>
protected SqlDataReader GetThreadMessages()
{
DiscussionDB discuss = new DiscussionDB();
SqlDataReader dr = discuss.GetThreadMessages(TopLevelList.DataKeys[TopLevelList.SelectedIndex].ToString());
return dr;
}
/// <summary>
/// 当TopLevelList中有任何按钮电击时触发(展开/折叠)
/// </summary>
/// <param name="Sender"></param>
/// <param name="e"></param>
private void TopLevelList_Select(object Sender, DataListCommandEventArgs e)
{
// 判断命令是展开还是折叠
String command = ((ImageButton)e.CommandSource).CommandName;
if (command == "collapse")
{
// 折叠
TopLevelList.SelectedIndex = -1;
}
else
{
// 展开
TopLevelList.SelectedIndex = e.Item.ItemIndex;
}
BindList();
}
/// <summary>
/// 讨论的链接
/// </summary>
/// <param name="item"></param>
/// <returns></returns>
protected String FormatUrl(int item)
{
return "~/DesktopModules/DiscussDetails.aspx?ItemID=" + item + "&mid=" + ModuleId;
}
/// <summary>
/// 决定是根节点还是其他(好决定显示+还是点)
/// </summary>
/// <param name="count"></param>
/// <returns></returns>
protected String NodeImage(int count)
{
if (count > 0)
{
// 非根节点,可以展开
return "~/images/plus.gif";
}
else
{
// 更节点,不能展开
return "~/images/node.gif";
}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器
/// 修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.TopLevelList.ItemCommand += new System.Web.UI.WebControls.DataListCommandEventHandler(this.TopLevelList_Select);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?