有时候我们需要修改我们控件的字体,色彩,大小等的项目。同时我还希望在Listeitem里面加载系统的字体列表以及色彩的列表。
先建立我们的文件
Default2.aspx
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
< html xmlns ="http://www.w3.org/1999/xhtml" >
< head runat ="server" >
< title > Untitled Page </ title >
</ head >
< body >
< form id ="form1" runat ="server" >
< div >
选择背景颜色 < br />
< asp:DropDownList ID ="listBackColor" runat ="server" Width ="168px" >
</ asp:DropDownList >< br />
< br />
选择字体 < br />
< asp:DropDownList ID ="lstFontName" runat ="server" Width ="168px" >
</ asp:DropDownList >< br />
< br />
字体大小 < br />
< asp:TextBox ID ="TextBox1" runat ="server" ></ asp:TextBox >< br />
< br />
边框样式 < br />
< asp:RadioButtonList ID ="RadioButtonList1" runat ="server" >
</ asp:RadioButtonList ></ div >
< br />
< br />
< asp:CheckBox ID ="chkPic" runat ="server" Text ="使用默认图片" />< br />
< br />
要说的话 < br />
< asp:TextBox ID ="TextBox2" runat ="server" Height ="101px" TextMode ="MultiLine" Width ="192px" ></ asp:TextBox >< br />
< br />
< asp:Button ID ="cmdUpdate" runat ="server" Text ="选择好了" OnClick ="cmdUpdate_Click" />< br />
< br />
< br />
< asp:Panel ID ="pnlCard" runat ="server" Height ="70px" Width ="476px" >
< br />
< asp:Label ID ="lblGreeting" runat ="server" Text ="Label" ></ asp:Label >< br />
< br />
< asp:Image ID ="imgDefault" runat ="server" /></ asp:Panel >
< br />
< br />
</ form >
</ body >
</ html >
Default2.aspx.cs
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load( object sender, EventArgs e)
{
}
protected void cmdUpdate_Click( object sender, EventArgs e)
{
}
}
常规的做饭就是在Listitem里面一个一个添加内容。然后在cmdUpdate_Click 里面
使用
//更新色彩
pnlCard.BackColor = Color.FromName(lstBackColor.SelectedItem.Text);
//更新字体
lblGreeting.Font.Name =lstFontName.SelectedItem.Text;
//设定字体大小
lblGreeting.Font.Size = FontUnit.Point(Int32.Parse(textFontSize.Text));
//更新边框粗细
int boderValue = Int32.Parse(lstBorder.SelectedItem.Value):
pnlCard.BorderStyle =(BorderStyle)borderValue;
另外一种更加系统的更新办法
1.得到已经安装的所有字体的列表
System.Drawing.Text.InstalledFontCollection fonts;
fonts = new System.Drawing.Text.InstalledFontCollection();
foreach(FontFamily family in fonts.Families)
{
lstFontName.Items.Add(family.Name);
}
2.得到所有安装的色彩
string [] colorArray = Enum.GetNames(typeof(System.Drawing.KnownColor));
lstBackColor.DataSource =colorArray;
lstBackColor.DataBind();
3.borderstyle也是一样的
string [] borderStyleArray = Enum.GetNames(typeof(BorderStyle));
lstBorder.DataSource =borderStyleArray;
lstBorder.DataBind();