protected override FrameworkElement BuildElement(ValueContainer value)
{
IntegerUpDown iud = new IntegerUpDown() { Width = 200 };
iud.ValueChanged += (s, e) =>
{
value.Value = iud.Value;
};
Action onValueChanged = () =>
{
iud.Value = Convert.ToInt32(value.Value);
};
value.ValueChanged += onValueChanged;
onValueChanged();
return iud;
}