簡體   English   中英

WPF擴展工具包-在DecimalUpDown中選擇值

[英]WPF Extended ToolKit - Selecting value in DecimalUpDown

經過數小時的嘗試來解決這個問題,我放棄了,實際上是在想是否有解決方案。

我有一個WPF視圖,將焦點從后面的代碼(xaml.cs)向下設置為小數。 我的目標是選擇其中的值,因為它加載了“ 0.00”,並且讓用戶在輸入值之前必須刪除它令人沮喪。 我在加載的方法中嘗試了以下代碼:

    private void Loaded_Window(object sender, EventArgs e)
    {
        txtAmount.AutoSelectBehavior = AutoSelectBehavior.OnFocus;

        txtAmount.Focus();
        Keyboard.Focus(txtAmount);
    }

我也嘗試將SelectAllOnGotFocus設置為true,但仍然無法正常工作。 有趣的是,如果我在方法中放置了調試點,這將選擇測試,因此我認為它與用戶控件的加載有關。 有人對如何使這項工作有任何指示嗎?

XAML十進制updown:

<xctk:DecimalUpDown x:Name="txtAmount" d:LayoutOverrides="Height" Minimum="0" Maximum="99999999.99" ShowButtonSpinner="False" UpdateValueOnEnterKey="True" Text="{Binding Amount, UpdateSourceTrigger=PropertyChanged}" AllowSpin="False" FormatString="N2" >

請嘗試以下操作:

private void [NAME OF YOUR EVENT GOES HERE] (object sender, KeyboardFocusChangedEventArgs e)
        {
            if (e.KeyboardDevice.IsKeyDown(Key.Tab))
            {
                SelectAll();
            }
        }

“ SelectAll”實際上是這里的主要內容,您可以忽略我相信的if語句。

在XAML中,您將必須將屬性“ GotFocus”添加到控件中,如下所示:

<xctk:DecimalUpDown GotFocus="[NAME OF YOUR EVENT GOES HERE]" />

因此,每當它獲得焦點時,它要做的第一件事就是選擇所有准備編輯的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM