Лучшая практика WPF для окна DataEntry

Вы можете использовать вспомогательные столбцы и TEXT()

Создать два столбца с такими датами, например:

   A            B
2019-01-01  2019-01-07
2019-01-08  2019-01-14

Для Excel достаточно двух строк, чтобы понять шаблон. ]

В C1 вы добавляете следующую формулу:

=TEXT(A1,"MMM D")&" - "&TEXT(B1,"MMM D")

Теперь вы можете использовать заполнение, чтобы заполнить даты, сколько вам нужно.
Если вам не нужны / не нужны вспомогательные столбцы, скопируйте столбец C и вставьте в качестве значений, теперь вы можете удалить столбцы A и B.

enter image description here

16
задан marc.d 25 November 2008 в 15:00
поделиться

4 ответа

У Karl Shifflett также есть хороший подход к формам LOB в WPF: http://karlshifflett.wordpress.com/2008/10/23/wpf-silverlight-lob-form-layout-searching-for-a-better-solution/

2
ответ дан 30 November 2019 в 23:09
поделиться

Лично, я - огромный поклонник AutoGrid: http://www.codeplex.com/wpfcontrib/Wiki/View.aspx?title=AutoGrid&referringTitle=Home

5
ответ дан 30 November 2019 в 23:09
поделиться

Некоторые люди используют вложенный StackPanels для "решения" этой проблемы, но по моему скромному мнению который просто представляет другую проблему (чрезмерное увеличение размера кода). Я думаю лучший способ решить, это должно записать Вашу собственную панель, которая размечает детей последовательно в столбцах. Я сделал это на предыдущем проекте, и он имеет много преимуществ:

  • Больше читаемого и краткого XAML
  • Легче поддержать XAML
  • Более быстрая производительность

Использование выглядело примерно так:

<local:FieldPanel>
    <Label>Field 1:</Label>
    <TextBox/>

    <Label>Field 2:</Label>
    <TextBox/>

    <Label>Field 3:</Label>
    <TextBox/>
</local:FieldPanel>
3
ответ дан 30 November 2019 в 23:09
поделиться

Вот еще один макет формы http://www.slideshare.net/ackava/ui-atoms-form-layout

1
ответ дан 30 November 2019 в 23:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: