[DefaultValue ("")]
public string Text {
get {
- return ViewState ["Text"] == null ? String.Empty : (String) ViewState ["Text"];
+ object o = ViewState ["Text"];
+ if (o == null)
+ o = ViewState ["Value"];
+ if (o != null)
+ return (string) o;
+ return String.Empty;
}
set {
ViewState ["Text"] = value;
[DefaultValue ("")]
public string Value {
get {
- return ViewState ["Value"] == null ? String.Empty : (String) ViewState ["Value"];
+ object o = ViewState ["Value"];
+ if (o == null)
+ o = ViewState ["Text"];
+ if (o != null)
+ return (string) o;
+ return String.Empty;
}
set {
ViewState ["Value"] = value;
ToolTip = bin.ToolTip;
// Bind Value property
-
+ string value = null;
if (bin.ValueField.Length > 0) {
- Value = Convert.ToString (GetBoundPropertyValue (bin.ValueField));
- if (Value.Length == 0)
- Value = bin.Value;
- if (Value.Length == 0)
- Value = bin.Text;
+ value = Convert.ToString (GetBoundPropertyValue (bin.ValueField));
}
- else if (bin.Value.Length > 0)
- Value = bin.Value;
- else if (bin.Text.Length > 0)
- Value = bin.Text;
- else
- Value = GetDefaultBoundText ();
-
- // Bind Text property
+ if (String.IsNullOrEmpty (value)) {
+ if (bin.Value.Length > 0)
+ value = bin.Value;
+ else if (bin.Text.Length > 0)
+ value = bin.Text;
+ else
+ value = String.Empty;
+ }
+ Value = value;
+ // Bind Text property
+ string text = null;
if (bin.TextField.Length > 0) {
- Text = Convert.ToString (GetBoundPropertyValue (bin.TextField));
+ text = Convert.ToString (GetBoundPropertyValue (bin.TextField));
if (bin.FormatString.Length > 0)
- Text = string.Format (bin.FormatString, Text);
- if (Text.Length == 0)
- Text = bin.Text;
- if (Text.Length == 0)
- Text = bin.Value;
+ text = string.Format (bin.FormatString, text);
}
- else if (bin.Text.Length > 0)
- Text = bin.Text;
- else if (bin.Value.Length > 0)
- Text = bin.Value;
- else
- Text = GetDefaultBoundText ();
+ if (String.IsNullOrEmpty (text)) {
+ if (bin.Text.Length > 0)
+ text = bin.Text;
+ else if (bin.Value.Length > 0)
+ text = bin.Value;
+ else
+ text = String.Empty;
+ }
+ Text = text;
}
else {
m.Items [0].ChildItems.Add (new MenuItem ());\r
m.Items [0].ChildItems [0].ChildItems.Add (new MenuItem ());\r
}\r
+\r
+ [Test]\r
+ public void MenuItem_TextValue1 ()\r
+ {\r
+ MenuItem item = new MenuItem ();\r
+ item.Text = "TTT";\r
+ Assert.AreEqual ("TTT", item.Value, "MenuItem_TextValue1#1");\r
+ item.Value = "";\r
+ Assert.AreEqual ("", item.Value, "MenuItem_TextValue1#2");\r
+ item.Value = null;\r
+ Assert.AreEqual ("TTT", item.Value, "MenuItem_TextValue1#3");\r
+ }\r
+\r
+ [Test]\r
+ public void MenuItem_TextValue2 ()\r
+ {\r
+ MenuItem item = new MenuItem ();\r
+ item.Value = "VVV";\r
+ Assert.AreEqual ("VVV", item.Text, "MenuItem_TextValue2#1");\r
+ item.Text = "";\r
+ Assert.AreEqual ("", item.Text, "MenuItem_TextValue2#2");\r
+ item.Text = null;\r
+ Assert.AreEqual ("VVV", item.Text, "MenuItem_TextValue2#3");\r
+ }\r
}\r
}\r
#endif\r