0
我有一个简单的网页控件,它的工作原理有点类似。它只是不允许(没有错误)设置控件中的任何变量,无论我尝试什么,它只是不显示除默认值之外的任何内容。简单的网页控件无法正确呈现
我的控制:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="Message.ascx.cs" Inherits="Message" %>
<asp:Panel runat="server" ID="ErrorPanel">
<asp:Literal
runat="server"
ID="MessageTextLit"
/>
</asp:Panel>
/// <summary>
/// The type of the message, good, bad etc.
/// </summary>
public enum MessageType
{
Good,
Error
}
public partial class Message : System.Web.UI.UserControl
{
public string MessageText { get; set; } // Text of the error message
public MessageType Type { get; set; } // Message type
protected void Page_Load(object sender, EventArgs e)
{
MessageTextLit.Text = MessageText;
// Set correct CSS class
if (Type == MessageType.Good)
ErrorPanel.CssClass = "good-box";
else if (Type == MessageType.Error)
ErrorPanel.CssClass = "bad-box";
}
}
在我的网页我有它:
<CrystalControls:Message runat="server" ID="TopMessage" Visible="false" />
然后,当按下按钮,我做的:
if (QuestionSubject.Length < 5)
{
TopMessage.MessageText = "Soemthing message";
TopMessage.Type = MessageType.Error;
TopMessage.Visible = true;
}
else if (QuestionBody.Length < 10)
{
TopMessage.MessageText = "Error message";
TopMessage.Type = MessageType.Error;
TopMessage.Visible = true;
}
我检查,并且如果正在发射,它不会抛出任何错误,但Message
类中的变量都不会设置!他们只是默认我做的任何事情。我无法改变他们的任何价值观。
Brilliant this works thanks – 2011-04-11 11:10:57