📄 smiliesview.cs
字号:
//------------------------------------------------------------------------------
// <copyright company="Telligent Systems">
// Copyright (c) Telligent Systems Corporation. All rights reserved.
// </copyright>
//------------------------------------------------------------------------------
using System.Web.UI.WebControls;using CommunityServer.Components;namespace CommunityServer.Discussions.Controls
{
public class SmiliesView : DataList
{
public SmiliesView()
{
AlternatingItemTemplate = Page.LoadTemplate( Globals.ApplicationPath + "/Themes/default/Skins/Admin/View-Smilies.ascx");
EditItemTemplate = Page.LoadTemplate( Globals.ApplicationPath + "/Themes/default/Skins/Admin/View-Smilies.ascx");
HeaderTemplate = Page.LoadTemplate( Globals.ApplicationPath + "/Themes/default/Skins/Admin/View-Smilies.ascx");
FooterTemplate = Page.LoadTemplate( Globals.ApplicationPath + "/Themes/default/Skins/Admin/View-Smilies.ascx");
DataSource = Smilies.GetSmilies();
}
protected override void CreateChildControls()
{
base.CreateChildControls ();
if( !Page.IsPostBack )
DataBind();
}
}
/*
/// <summary>
/// This server control is used to display all the members of the current forum.
/// </summary>
[
ParseChildren(true)
]
public class SmiliesView : SkinnedForumWebControl {
ArrayList smiliesArray = null;
public DataList smileyList;
// TextBox _txtSmileyCode;
// TextBox _txtSmileyUrl;
// TextBox _txtSmileyText;
// int _smileyToEdit;
// TextBox searchForUser;
// Button searchButton;
// Define the default skin for this control
private const string skinFilename = "Admin/View-Smilies.ascx";
public SmiliesView() {
// Set the default skin
if ( SkinFilename == null )
SkinFilename = skinFilename;
}
/// <summary>
///
/// </summary>
public override void DataBind() {
if( smileyList.DataSource != null )
return;
smiliesArray = Smilies.GetSmilies();
if( smiliesArray == null )
return;
smileyList.DataSource = smiliesArray;
smileyList.DataBind();
}
// protected void BindList() {
// smileyList.DataSource = smiliesArray;
//
// if( !Page.IsPostBack)
// smileyList.DataBind();
// }
override protected void InitializeSkin(Control skin) {
// Find the user list repeater
//
smileyList = (DataList) skin.FindControl("SmileyList");
// smileyList.AlternatingItemTemplate = new TemplateBuilder()
// smileyList.AlternatingItemTemplate = Page.LoadTemplate( Globals.ApplicationPath + "/Themes/default/Skins/" + this.SkinFilename );
// smileyList.EditItemTemplate = Page.LoadTemplate( Globals.ApplicationPath + "/Themes/default/Skins/" + this.SkinFilename );
// smileyList.HeaderTemplate = Page.LoadTemplate( Globals.ApplicationPath + "/Themes/default/Skins/" + this.SkinFilename );
// smileyList.FooterTemplate = Page.LoadTemplate( Globals.ApplicationPath + "/Themes/default/Skins/" + this.SkinFilename );
// smileyList.ItemCreated += new DataListItemEventHandler(smileyList_ItemCreated);
// smileyList.ItemCommand += new DataListCommandEventHandler(smileyList_ItemCommand);
smileyList.EditCommand += new DataListCommandEventHandler(smileyList_EditCommand);
smileyList.CancelCommand += new DataListCommandEventHandler(smileyList_CancelCommand);
smileyList.UpdateCommand += new DataListCommandEventHandler(smileyList_UpdateCommand);
smileyList.DeleteCommand += new DataListCommandEventHandler(smileyList_DeleteCommand);
// smileyList.DataSource = smiliesArray;
if( !Page.IsPostBack)
DataBind();
}
private void smileyList_CancelCommand(object source, DataListCommandEventArgs e) {
// Set the EditItemIndex property to -1 to exit editing mode. Be sure
// to rebind the DataList to the data source to refresh the control.
smileyList.EditItemIndex = -1;
DataBind();
}
private void smileyList_UpdateCommand(object source, DataListCommandEventArgs e) {
Smiley updatedSmiley = this.GetCurrentSmiley( e );
if( updatedSmiley == null ) {
// TODO should we redirect to an error page?
return;
}
updatedSmiley.SmileyCode = ((TextBox)e.Item.FindControl("EditSmileyCode")).Text;
updatedSmiley.SmileyText = ((TextBox)e.Item.FindControl("EditSmileyText")).Text;
updatedSmiley.SmileyUrl = ((TextBox)e.Item.FindControl("EditSmileyUrl")).Text;
// now we can update the smiley
Smilies.UpdateSmiley( updatedSmiley );
// Set the EditItemIndex property to -1 to exit editing mode.
// Be sure to rebind the DataList to the data source to refresh
// the control.
smileyList.EditItemIndex = -1;
DataBind();
}
private void smileyList_DeleteCommand(object source, DataListCommandEventArgs e) {
Smiley deleteSmiley = this.GetCurrentSmiley( e );
if( deleteSmiley == null ) {
// TODO should we redirect to an error page?
return;
}
Smilies.DeleteSmiley( deleteSmiley );
smiliesArray.Remove( deleteSmiley );
// Set the EditItemIndex property to -1 to exit editing mode. Be sure
// to rebind the DataList to the data source to refresh the control.
smileyList.EditItemIndex = -1;
DataBind();
}
private void smileyList_EditCommand(object source, DataListCommandEventArgs e) {
smileyList.EditItemIndex = e.Item.ItemIndex;
DataBind();
}
private void smileyList_CreateCommand(object source, DataListCommandEventArgs e) {
TextBox txtSmileyCode = (TextBox)e.Item.FindControl("CreateSmileyCode");
TextBox txtSmileyUrl = (TextBox)e.Item.FindControl("CreateSmileyUrl");
TextBox txtSmileyText = (TextBox)e.Item.FindControl("CreateSmileyText");
if( txtSmileyCode != null &&
txtSmileyUrl != null &&
txtSmileyText != null ) {
if( txtSmileyCode.Text != String.Empty &&
txtSmileyUrl.Text != String.Empty &&
txtSmileyText.Text != String.Empty ) {
int nSmileyId = Smilies.CreateSmiley( new Smiley(0, txtSmileyCode.Text, txtSmileyUrl.Text, txtSmileyText.Text ));
smiliesArray.Add( new Smiley( nSmileyId, txtSmileyCode.Text, txtSmileyUrl.Text, txtSmileyText.Text));
DataBind();
}
}
}
private void smileyList_ItemCommand(object source, DataListCommandEventArgs e) {
if( e.CommandName == "create" )
smileyList_CreateCommand( source, e );
}
private void smileyList_ItemCreated(object sender, DataListItemEventArgs e) {
Button button = (Button)e.Item.FindControl("CreateButton");
// if( button != null ) {
// _txtSmileyCode = (TextBox)e.Item.FindControl("CreateSmileyCode");
// _txtSmileyUrl = (TextBox)e.Item.FindControl("CreateSmileyUrl");
// _txtSmileyText = (TextBox)e.Item.FindControl("CreateSmileyText");
// }
}
private Smiley GetCurrentSmiley( DataListCommandEventArgs e ) {
// Retrieve the updated values from the selected item.
TextBox txtSmileyId = (TextBox)e.Item.FindControl("EditSmileyId");
TextBox txtSmileyCode = (TextBox)e.Item.FindControl("EditSmileyCode");
TextBox txtSmileyUrl = (TextBox)e.Item.FindControl("EditSmileyUrl");
TextBox txtSmileyText = (TextBox)e.Item.FindControl("EditSmileyText");
if( txtSmileyId == null ||
txtSmileyCode == null ||
txtSmileyUrl == null ||
txtSmileyText == null ) {
// TODO should we redirect to an error page.
return null;
}
int smileyId = Int32.Parse(txtSmileyId.Text);
String smileyCode = txtSmileyCode.Text;
String smileyUrl = txtSmileyUrl.Text;
String smileyText = txtSmileyText.Text;
if( (smileyId <= 0 ) ||
(smileyCode == null || smileyCode == String.Empty ) ||
(smileyUrl == null || smileyUrl == String.Empty ) ||
(smileyText == null || smileyText == String.Empty )) {
// TODO : should we redirecto to an error page?
return null;
}
// ok we've done all our data validation lets update the smiley
Smiley foundSmiley = null;
// since the smilies are not stored in a hash, I have to iterate the array to find
// the smiley being edited
foreach( Smiley smiley in smiliesArray ) {
if( smiley.SmileyId == smileyId )
foundSmiley = smiley;
}
return foundSmiley;
}
// private void smileyList_ItemCreated(object sender, RepeaterItemEventArgs e) {
//
// _btnEdit = (Button) e.Item.FindControl("EditSmiley");
// _btnDelete = (Button) e.Item.FindControl("DeleteSmiley");
// _btnCreate = (Button) e.Item.FindControl("CreateSmiley");
//
// // if we couldn't find any, then we are on the header row, so get out
// if( _btnEdit == null &&
// _btnDelete == null &&
// _btnCreate == null )
// return;
//
// // if we have the create control then we are on the footer
// if( _btnCreate != null ) {
//
// _btnCreate.Click += new EventHandler(_btnCreate_Click);
//
// this._txtSmileyCode = (TextBox) e.Item.FindControl("SmileyCode");
// this._txtSmileyText = (TextBox) e.Item.FindControl("SmileyText");
// this._txtSmileyUrl = (TextBox) e.Item.FindControl("SmileyUrl");
//
// } else if( _btnEdit != null &&
// _btnDelete != null ) {
//
// _btnEdit.Click +=new EventHandler(_btnEdit_Click);
// _btnDelete.Click +=new EventHandler(_btnDelete_Click);
// }else {
//
// }
// }
// private void smileyList_ItemCommand(object source, RepeaterCommandEventArgs e) {
//
// HttpContext.Current.Response.Write(source.ToString() + " " + e.CommandArgument + " " + e.CommandName + " " + e.CommandSource + " " + e.Item.ToString() );
// }
//
// private void _btnCreate_Click(object sender, EventArgs e) {
// if( _txtSmileyCode != null &&
// _txtSmileyUrl != null &&
// _txtSmileyText != null ) {
//
// if( _txtSmileyCode.Text != String.Empty &&
// _txtSmileyUrl.Text != String.Empty &&
// _txtSmileyText.Text != String.Empty ) {
//
// Smilies.CreateSmiley( new Smiley(0, _txtSmileyCode.Text, _txtSmileyUrl.Text, _txtSmileyText.Text ));
//
// DataBind();
// }
// }
//
// HttpContext.Current.Response.Write("youclicked");
// }
//
// private void _btnEdit_Click(object sender, EventArgs e) {
// HttpContext.Current.Response.Write("you edited");
// }
//
// private void _btnDelete_Click(object sender, EventArgs e) {
// HttpContext.Current.Response.Write("you deleted");
// }
}
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -