Создание текстового поля WPF с редактируемым текстом и определяемым пользователем путем привязки в окне свойств.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Создание текстового поля WPF с редактируемым текстом и определяемым пользователем путем привязки в окне свойств.

Сообщение Anonymous »

Я работаю с WPF и пытаюсь расширить функциональность свойства Text в свойствах в режиме разработки в TextBox, но я сталкиваюсь с ограничениями свойства Text.< /p>
Вот чего я хочу достичь:
  • WPF работает так, что когда Text имеет привязку поля Text в Свойства пусты, и вам нужно щелкнуть пустое поле, затем у вас появится список контекстного меню, выберите какой-либо элемент в меню, чтобы увидеть значение привязки.
    Я хочу создать собственное текстовое поле, где текст< Свойство /code> по-прежнему имеет привязку, но с возможностью обновления значения привязки в поле «Текст» в «Свойствах», не нажимая «Текст» и не выбирая его в меню, например. Пользовательское выражение и т. д.
    ИЛИ
  • Я хочу добавить новое свойство с именем «Путь», которое отображается в окне «Свойства», но при изменении текста оно выигрывает. не будет добавлен в xaml. Оно будет связано со свойством Text. Таким образом, будет отображаться значение привязки из свойства Text.
    Это позволит пользователю установить пользовательскую привязку непосредственно через свойство Path, не вызывая дополнительных диалоговых окон или всплывающих окон, которые появляются при нажатии на Text в окне свойств. Свойство Path не будет напрямую отражено в XAML.
Как добиться такого поведения в WPF?
В настоящее время я реализовал диалоговое окно (PropertyEditorWindow), которое открывается как всплывающее окно при срабатывании определенного события в текстовом поле. Однако я хотел бы, например. интегрировать это окно в окно «Свойства» вместо того, чтобы размещать его в виде отдельного всплывающего окна.
Я стремлюсь получить текстовое значение из привязки, гарантируя при этом, что любые изменения этого свойства не отражаются напрямую в интерфейс XAML в режиме разработки. Возможно ли добиться этого в WPF?

отобразится в окне свойств:

MineText |Binding|
Путь |Get.Test|
public class MineTextBox : TextBox
{
public static readonly DependencyProperty MineTextProperty =
DependencyProperty.Register("MineText", typeof(string), typeof(MineTextBox),
new PropertyMetadata(string.Empty));

public string MineText
{
get { return (string)GetValue(MineTextProperty); }
set { SetValue(MineTextProperty, value); }
}

static MineTextBox()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(MineTextBox), new FrameworkPropertyMetadata(typeof(MineTextBox)));
}

private void OpenEditor(string newText)
{
var editorWindow = new PropertyEditorWindow(newText);
if (editorWindow.ShowDialog() == true)
{
MineText = editorWindow.MineText;
}
}
}










Подробнее здесь: https://stackoverflow.com/questions/790 ... h-in-prope
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»