Простые вопросы управления WPF - PullRequest
0 голосов
/ 17 января 2011

Просто столкнулся с кучей случайных, но, вероятно, очень простых вопросов при обучении работе с WPF.Если кто-нибудь может ответить на любой из этих вопросов, это было бы очень ценно.

  1. У меня есть Rectangle, который я по своему вкусу, а затем StackPanel, который я фактически размещаюсодержимое (связка меток). Похоже, что Rectangle не имеет закрывающего оператора, так как я могу сделать его родителем StackPanel (я хочу, чтобы панель двигалась вместе с ним)?

  2. Мне нужно отобразить текст (метки) в виде таблицы.Это будет только два столбца и 8 строк (количество строк может измениться).Первоначально я рассмотрел только использование Grid, но, поскольку это предназначено для макетов, оно не сработало, как ожидалось.Я также проверил DataGrid, но это кажется запутанным и слишком сложным для моих нужд.Есть ли какой-нибудь простой элемент стиля таблицы, который я могу использовать?

  3. У меня есть несколько анимированных расширителей, и я хочу придать другим элементам контента пользовательского интерфейса в моем приложении похожую строку заголовка.Я не видел какого-либо элемента для этого, поэтому мне интересно, нужно ли мне просто использовать Label или что-то и стилизовать его как можно ближе, чтобы соответствовать, или если что-то уже существует, что я должен использовать вместо этого.Если мне нужно использовать метку, как правильно сгруппировать / прикрепить ее с элементом, для которого она является строкой заголовка?

  4. Существуют ли какие-либо элементы управления для WPF, которые позволили быдля строки меню в стиле Mac?Нечто похожее на enter image description here, где значки перемещаются и расширяются при наведении мыши.

  5. У меня есть сетка, в которой есть два расширителя (один над другим) с Height="Auto", идля двух рядов установлено значение Height="Auto", поэтому, когда верхняя часть минимизирована, нижняя перемещается вверх, чтобы закрыть зазор.Я использую MinHeight прямо сейчас, чтобы убедиться, что они хотя бы немного расширены, но я бы хотел, чтобы они занимали все 100% высоты Grid.Что для этого нужно сделать?

1 Ответ

3 голосов
/ 17 января 2011
  1. Прямоугольник не может иметь дочерний контент, лучше подойти к использованию Border, вы можете использовать его как родительский элемент вашей стековой панели, применяя Background и BorderBrush, чтобы он выглядел как прямоугольник.

  2. Для простой компоновки таблицы Grid - это путь.Ваша проблема в том, что вам нужно, чтобы она была динамичной?Если это так, вы можете создать несколько сеток с SharedSizeGroup для столбцов, чтобы они выглядели как одна сетка.См .: Как выровнять отдельные сетки, созданные с помощью шаблонов, по их столбцам / строкам?

  3. Узнайте о создании собственных шаблонов!

  4. Не то, что я знаю, но было бы относительно просто создать раскадровку, которая масштабирует элемент при наведении мыши.

  5. Не знаю ... выдохся!

Как упоминал Анджей Носаль, это действительно должны быть отдельные вопросы!

...