63 lines
1.2 KiB
C#
63 lines
1.2 KiB
C#
using System;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
using System.ComponentModel;
|
|
|
|
namespace umbraco.editorControls
|
|
{
|
|
public class numberField : System.Web.UI.WebControls.TextBox, interfaces.IDataEditor
|
|
{
|
|
private interfaces.IData _data;
|
|
public numberField(interfaces.IData Data) {
|
|
_data = Data;
|
|
}
|
|
|
|
|
|
public Control Editor {
|
|
get{return this;}
|
|
|
|
}
|
|
public virtual bool TreatAsRichTextEditor
|
|
{
|
|
get {return false;}
|
|
}
|
|
public bool ShowLabel
|
|
{
|
|
get {return true;}
|
|
}
|
|
|
|
public void Save()
|
|
{
|
|
if (Text.Trim() != "")
|
|
_data.Value = Text;
|
|
else
|
|
_data.Value = null;
|
|
}
|
|
|
|
protected override void OnInit(EventArgs e)
|
|
{
|
|
base.OnInit (e);
|
|
CssClass = "umbEditorNumberField";
|
|
// load data
|
|
if (_data != null && _data.Value != null)
|
|
this.Text = _data.Value.ToString();
|
|
}
|
|
|
|
public override string Text
|
|
{
|
|
get { return base.Text; }
|
|
set {
|
|
try {
|
|
if (value != null)
|
|
base.Text = Convert.ToInt32(value).ToString();
|
|
}
|
|
catch {
|
|
base.Text = "";
|
|
System.Web.HttpContext.Current.Trace.Warn("Numberfield", "Value has to be an integer (" + value + ")");
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|