2

WPFに問題があります:XAMLでデフォルト値のスライダーを使用したいのですが、使用すると例外がスローされます:

An unhandled exception of type 'System.Reflection.TargetInvocationException' occurred in PresentationFramework.dll

これは私のコードです:

<Slider Height="23" HorizontalAlignment="Center" Name="sliderVolume" VerticalAlignment="Top" Width="66" Grid.Row="2" ValueChanged="volume_ValueChanged" Margin="598,35,12,0" Value="100"/>

これは私のコードは.csです:

private void volume_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
    mediaElement.Volume = sliderVolume.Value;
}

デフォルト値なし

Value"100"

できます !

4

3 に答える 3

1

最小値と最大値が定義されていません。「デフォルト」の値が範囲外である可能性があります。

于 2013-02-07T14:57:50.580 に答える
1

MediaElementボリュームプロパティは、0から1までの線形スケールで表されます。

試す:

mediaElement.Volume = sliderVolume.Value / 10;
于 2013-02-07T15:07:43.160 に答える
1

MSDNによると。許可される最大ボリュームは1です。

0から1までの線形スケールで表されるメディアのボリューム。デフォルトは0.5です。

したがって、スライダーを次のように設定する必要があります。

<Slider Value="0.5" Minimum="0" Maximum="1" Height="23" HorizontalAlignment="Center"
Name="sliderVolume" VerticalAlignment="Top" Width="66" Grid.Row="2"
ValueChanged="volume_ValueChanged" Margin="598,35,12,0" />

コード:

private void volume_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> args)
      {
         mediaElement.Volume = (double)sliderVolume.Value;
      }
于 2013-02-07T15:19:00.903 に答える