Browse Source

Update property values in DevTools.

pull/12/head
Steven Kirk 12 years ago
parent
commit
a4b12df7c1
  1. 2
      Perspex.Diagnostics/DevTools.cs
  2. 13
      Perspex.Diagnostics/ViewModels/PropertyDetails.cs

2
Perspex.Diagnostics/DevTools.cs

@ -118,7 +118,7 @@ namespace Perspex.Diagnostics
Children = new Controls
{
new TextBlock { Text = x.Name },
new TextBlock { Text = Convert.ToString(x.Value) },
new TextBlock { [!TextBlock.TextProperty] = x.WhenAnyValue(v => v.Value).Select(v => v.ToString()) },
new TextBlock { Text = x.Priority },
},
}),

13
Perspex.Diagnostics/ViewModels/PropertyDetails.cs

@ -11,13 +11,20 @@ namespace Perspex.Diagnostics.ViewModels
internal class PropertyDetails : ReactiveObject
{
private object value;
public PropertyDetails(PerspexPropertyValue value)
{
this.Name = value.Property.Name;
this.Value = value.CurrentValue ?? "(null)";
this.value = value.CurrentValue ?? "(null)";
this.Priority = (value.PriorityValue != null) ?
Enum.GetName(typeof(BindingPriority), value.PriorityValue.ValuePriority) :
value.Property.Inherits ? "Inherited" : "Unset";
if (value.PriorityValue != null)
{
value.PriorityValue.Changed.Subscribe(x => this.Value = x.Item2);
}
}
public string Name
@ -28,8 +35,8 @@ namespace Perspex.Diagnostics.ViewModels
public object Value
{
get;
private set;
get { return this.value; }
private set { this.RaiseAndSetIfChanged(ref this.value, value); }
}
public string Priority

Loading…
Cancel
Save