ฉันกำลังมองหาการควบคุม NumericUpDown (aka number spinner) อย่างง่ายใน WPF ดูเหมือนว่าจะเป็นการขาดการควบคุมใน WPF ต้องมีบางอย่างที่มีอยู่แล้วและฉันไม่ชอบที่จะประดิษฐ์วงล้อขึ้นมาใหม่
ฉันกำลังมองหาการควบคุม NumericUpDown (aka number spinner) อย่างง่ายใน WPF ดูเหมือนว่าจะเป็นการขาดการควบคุมใน WPF ต้องมีบางอย่างที่มีอยู่แล้วและฉันไม่ชอบที่จะประดิษฐ์วงล้อขึ้นมาใหม่
คำตอบ:
Extended WPF Toolkit มีหนึ่ง: NumericUpDown
นี่คือโครงการใบอนุญาต MIT พร้อม dll สำหรับตัวควบคุม WPF สำหรับสิ่งที่คุณกำลังอธิบาย ช่วยให้สามารถปรับแต่งการเพิ่มขึ้นต่ำสุดสูงสุดและค่าด้วยอินเทอร์เฟซที่คล้ายกันกับตัวควบคุมแถบเลื่อน
MahAppsมีการควบคุมNumericUpDown :
หากโซลูชันเชิงพาณิชย์ใช้ได้คุณอาจพิจารณาชุดควบคุมนี้: WPF Elements by Mindscape
มันมีตัวควบคุมการหมุนและอีกทางเลือกหนึ่ง (ความชอบส่วนตัวของฉัน) สปินมัณฑนากรที่สามารถตกแต่งตัวควบคุมตัวเลขต่างๆ (เช่น IntegerTextBox, NumericTextBox และเป็นส่วนหนึ่งของชุดควบคุม) ใน XAML ดังนี้:
<WpfElements:SpinDecorator>
<WpfElements:IntegerTextBox Text="{Binding Foo}" />
</WpfElements:SpinDecorator>
โซลูชั่นที่สมบูรณ์ที่http://www.codeproject.com/KB/WPF/NumericUpDownTextBox.aspx
เพิ่มกล่องข้อความและแถบเลื่อน
ใน VB
Private Sub Textbox1_ValueChanged(ByVal sender As System.Object, ByVal e As System.Windows.RoutedPropertyChangedEventArgs(Of System.Double)) Handles Textbox1.ValueChanged
If e.OldValue > e.NewValue Then
Textbox1.Text = (Textbox1.Text + 1)
Else
Textbox1.Text = (Textbox1.Text - 1)
End If
End Sub
ลองสิ่งนี้: WPF NumericUpDown จากการทำซ้ำ ScrollBar
ตัวเลือกอื่น ๆ (เชิงพาณิชย์):