0

スライダー テンプレートを編集し、Win RT で Slider Base Class を継承するクラスを追加して、スライダー スケール コントロールを作成しました。スケール値が表示され、スライダーの最大値と最小値に関して分割が作成されます。例: 最小値が 0 で最大値が 100 の場合、0、100、200、300 などと表示されます。メソッドは OnApplyTemplate オーバーライドから呼び出されます。

 public sealed class ScaleControl : Slider
{      
protected override void OnApplyTemplate()
    {
        base.OnApplyTemplate();
        SetScaleValues(this.Minimum, this.Maximum);
    }   

 private void SetScaleValues(double MinValue, double MaxValue)
    {
     //logic here
}

}

XAML で Max と Min を指定すると、問題なく動作します。私の問題は、「スライダーの最大値と最小値をコードビハインドで動的に指定すると、分割が更新されない」ことです。誰でも私を助けることができますか?

4

1 に答える 1

0

WinRT XAML Toolkit からPropertyChangeEventSourceコントロールを使用してみることができます。NumericUpDownコントロールで使用例を確認できます。

基本的に、次のようなことができます

var pcc =
    new PropertyChangeEventSource<double>(this, "Minimum");
pcc.ValueChanged += OnMinimumChanged;

private void OnMinimumCHanged(object source, double minimum) {}
于 2012-10-17T03:58:02.530 に答える