1

Lightswitch でアプリを作成しており、このカスタム コントロールを使用しました。

問題は、コントロールの値を変更するときです。

コントロールを動的に変更することはおそらく不可能です。新しい値を取得するには、更新する必要があります。

そのため、コントロールだけまたは画面の一部を更新する方法を知る必要があります。

これは、制御コードがどのように見えるかです

<Grid x:Name="LayoutRoot" Background="White" Width="200" Height="200">
    <GaugeControl:GaugeControl HorizontalAlignment="Left" Margin="10,10,10,10" 
                               Name="gaugeControl1"                       
                               Maximum="25000" Minimum="0" VerticalAlignment="Top"  />
</Grid>

このようにして、バインディングを値に設定します

public RadioGauge() {
  InitializeComponent();
  gaugeControl1.Value = Amount.amount; // where Amount is class and amount is int property
}

このようにして、コントロールのプロパティを変更します

SilverlightCustomControls.Amount.amount = 10000;

XAMLコントロールの更新または再読み込み、またはライトスイッチ画面の一部だけの更新については何も見つかりませんでした.. thx

4

1 に答える 1

0

コンポーネントがデータバインドされている場合、 Lightswitchはコンポーネントを自動的に更新します。値を設定しているだけなので、コントロールは更新されていません。コントロールをプロパティにバインドできませんか?次に、コードで変更すると、コントロールが自動的に更新されますか?

<Grid x:Name="LayoutRoot" Background="White" Width="200" Height="200">
    <GaugeControl:GaugeControl  HorizontalAlignment="Left" Margin="10,10,10,10"
                                Name="gaugeControl1"
                                Maximum="25000" Minimum="0"
                                VerticalAlignment="Top"
                                Value="{Binding Screen.SCREENDATASET.SelectedItem.Amount}"  />
</Grid>
于 2013-03-15T11:33:17.907 に答える