滑块谁存储整数

本文关键字:整数 存储 | 更新日期: 2023-09-27 18:33:33

我有这个WPF滑块:

<Slider Height="22" HorizontalAlignment="Left" Width="100" TickPlacement="BottomRight" AutoToolTipPlacement="BottomRight" TickFrequency="1" Minimum="10" Maximum="110" Value="{Binding Path=Zoom, Mode=TwoWay}" Ticks="100"/>

和我的 C# 代码隐藏

public object Zoom
{
    get { return _zoom.ToString() }
    set
    {
        try
        {
            string zoom = value.ToString().Replace(",", ".");
            if (zoom.EndsWith(" %"))
            {
                _zoom= System.Convert.ToInt32(System.Convert.ToInt64(zoom));
            }
            OnPropertyChanged("CurrentZoom");
        }
        catch (FormatException ex)
        {
            //TODO: =)
        }
    }
}

怎么可能只有整数可以存储在_zoom中?我不需要十进制数。

例如:

缩放为"13,99999"

_zoom应为 13(整数)

_zoom= System.Convert.ToInt32(System.Convert.ToInt64(zoom));

所以我收到此错误:

对于 Int32 来说,值太大或太小。

怎么了?

滑块谁存储整数

这会将十进制值返回到点/小数的左侧。

计算指定十进制数的整数部分。

 Math.Truncate(zoom)

更多信息

_zoom = (int)Math.Round(System.Convert.ToDouble(zoom));