Я делаю приложение для Windows 7, и я вставляю слайдер. Он начинается с 1 и заканчивается на 80. Я хочу, чтобы это было, когда вы останавливаете слайдер, он показывает значение везде, где ползунок находится в текстовом блоке. (например, если кто-то остановится на полпути, текстовый блок скажет 40)Хотите показать значение слайдера в текстовом блоке?
ответ
Легче было бы связать свойство ползунки значение для вашего TextBlocks Текст и затем вы будете получать значение обновляется каждый раз, когда он будет изменен. Вы также можете создать конвертер, потому что значение ползунка - это двойное число, а затем с конвертером вы можете преобразовать это значение в Int тоже.
Text="{Binding ElementName=YourSlider,Path=Value}"
Просто установите TextBlock.Text с помощью Slider.Value.ToString() в случае, когда вы остановили перетаскивание/изменение слайдера.
Если вы хотите, вы можете также сократить стоимость с Math.Round():
TextBlock.Text = Math.Round(Slider.Value, [Number of Decimals]).ToString()
С уважением Крис
Это не очень хорошее решение. Он не использует функциональные возможности привязки, предлагаемые XAML. –
Вы должны сделать ValueChanged событие для слайдера (что-то вроде этого)
private void ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
}
Тогда в этом случае, вы можете установить текст в текстовое поле ->
textbox1.Text = silder1.Value.ToString();
Everytime изменения ползунков, срабатывает событие, поэтому изменения TextBox Aswell
надеюсь, что это помогает,
Барта
эй спасибо многому человеку, но я получаю сообщение об ошибке «NullReferenceException был необработанным». Любая идея, что делать? спасибо, – Lavi
Можете ли вы опубликовать часть своего кода, где вы делаете то, что упоминалось выше? –
'private void slider1_ValueChanged (отправитель объекта, RoutedPropertyChangedEventArgs
Ответ «Барт Teunissen» довольно хорошо, но просто добавить простую проверку либо OldValue доступен или нет, то он будет работать идеально.
private void slider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
if(slider.OldValue != null)
{
textbox1.Text = silder1.Value.ToString();
}
}
надеюсь, что эта помощь.
- 1. Показать результат операции (умножения) в текстовом блоке
- 2. Показать узлы xml в текстовом блоке
- 3. Печать в текстовом блоке
- 4. Как показать WPF ValidationResult в отдельном текстовом блоке?
- 5. Переменные Bash в текстовом блоке
- 6. Хотите показать последние использованные значения в текстовом поле Android
- 7. Показать IDataErrorInfo Ошибка в текстовом блоке вместо подсказки
- 8. Как показать данные в текстовом блоке после JSON Parsing
- 9. Показать значение ползунка для каждого слайдера в cshtml
- 10. Хотите показать editText значение alertdialog для textview ..?
- 11. Поиск текста в текстовом блоке
- 12. Wp8 listpicker-display данные в текстовом блоке
- 13. показать значение текущей пятницы в текстовом поле
- 14. Показать значение Android int в текстовом виде
- 15. Показать SqLite Выбрать значение в текстовом поле
- 16. Показать значение тега span в текстовом файле
- 17. Decimal в значение слайдера
- 18. Хотите погладить цвет и стиль слайдера.
- 19. Как показать значение слайдера Jquery в несколько упавших divs
- 20. Показать значение в текстовом поле, если значение превышено
- 21. Показать подменю в другом блоке
- 22. Показать следующий ViewController в блоке
- 23. Хотите, чтобы соответствовать шаблону в текстовом файле
- 24. Измените текст в текстовом блоке на клике
- 25. Отобразить выделенный текст в текстовом блоке
- 26. Получить индекс элементов в текстовом блоке
- 27. Отображать HTML-объекты в текстовом блоке
- 28. Как предотвратить переполнение текста в текстовом блоке?
- 29. Как изменить фон в текстовом блоке?
- 30. tesseract распознавание целого числа в текстовом блоке
Это самое чистое решение. Если десятичные числа раздражают вас, тогда создайте конвертер, чем округлите число. –
@ Kasper: Я думаю, что Binding.StringFormat будет лучше, чем конвертер. –
@ alpha-mouse Никогда не использовал Binding.StringFormat, но если он работает, то это здорово и даже проще, чем конвертер. :) – BigL