powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Размеры TextBox
7 сообщений из 7, страница 1 из 1
Размеры TextBox
    #38974163
ЧитательX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На форме помещаю два TextBox-а. Один в строку Grid.Row="0", второй в Grid.Row="1", в шаблон строки DataGrid.
У каждого из них длинный текст. Нужно чтобы текст в этих боксах стал многострочным. Для этого каждому добавляю атрибут TextWrapping="Wrap".

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
<Grid>
  <Grid.RowDefinitions>
    <RowDefinition Height="Auto" />
    <RowDefinition Height="Auto" />
  </Grid.RowDefinitions>

<TextBox Grid.Row="0"
         Text="0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 " 
         TextWrapping="Wrap"
         />

<DataGrid Grid.Row="1" ... >
  <DataGrid.Columns>

    <DataGridTemplateColumn>
      <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>

          <TextBox Text="0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 " 
                   TextWrapping="Wrap" 
                   />

        </DataTemplate>
      </DataGridTemplateColumn.CellTemplate>
    </DataGridTemplateColumn>

  </DataGrid.Columns>

...



Первый бокс создает многострочность, а бокс в шаблоне не создает. Как заставить бокс внутри <DataTemplate> также отобразить информацию в несколько строк?
...
Рейтинг: 0 / 0
Размеры TextBox
    #38974165
ЧитательX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С названием темы я промазал!
...
Рейтинг: 0 / 0
Размеры TextBox
    #38974454
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное, из-за <RowDefinition Height="Auto" />
...
Рейтинг: 0 / 0
Размеры TextBox
    #38974457
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то типа такого http://stackoverflow.com/a/16221529/808128
...
Рейтинг: 0 / 0
Размеры TextBox
    #38974459
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подобный же случай, судя по всему http://stackoverflow.com/a/5550863
...
Рейтинг: 0 / 0
Размеры TextBox
    #38974822
ЧитательX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поизучал приведенные ссылки.
В первой говорится о том, что нужно установить
Код: c#
1.
<ColumnDefinition Width="*"/>


Пробовал. Не помогает. Я вообще уже перебрал все варианты с атрибутом Width - хоть вешайся.
Элементы шаманства тоже не дали результатов (добавлял где надо и где не надо всякие Margin, *Alignment, *ScrollBarVisibility в надежде "а вдруг!" - фиг вам!)
Вторая ссылка как бы работает, но использовать ее нельзя. Т.к. ширина колонки выставляется равной ширине всего DataGrid. Но, например, добавление в DataGrid еще одной колонки приведет к тому,
что ширина нужной колонки будет включать в себя и ширину добавленной колонки. А это косяк.
Как привязаться не к DataGrid, а к тому контейнеру, который визуально представляет саму колонку я не знаю
(шаманил, но как всегда неудачно).

Ниже прилагаю код окна в котором я тренировался. Может кто-нибудь попробует сделать правильные настройки.
У меня не получается!


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
<Window x:Class="wpf1.Window4"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Window4" Height="300" Width="600"
        >
   <Grid>
    <Grid.RowDefinitions>
      <RowDefinition Height="Auto" />
      <RowDefinition Height="*" />
    </Grid.RowDefinitions>

    <TextBox Grid.Row="0"						
                   Text="0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789" 
                   TextWrapping="Wrap"
                   />
	
    <DataGrid Grid.Row="1" Name="Grid_123" AutoGenerateColumns="False" >			
      <DataGrid.Columns>
							
        <DataGridTemplateColumn>
          <DataGridTemplateColumn.CellTemplate>
            <DataTemplate>

              <Grid>
                <Grid.ColumnDefinitions>
                  <ColumnDefinition Width="*"/>
                </Grid.ColumnDefinitions>
                <Grid.RowDefinitions>
                  <RowDefinition Height="*"/>
                </Grid.RowDefinitions>
                <TextBox Text="0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789 0123456789" 
                               TextWrapping="Wrap"
                               />
              </Grid>

            </DataTemplate>
          </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>

      </DataGrid.Columns>
    </DataGrid>

  </Grid>
</Window>




Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
public partial class Window4 : Window
{
  public Window4()
  {
    InitializeComponent( );
    Grid_123.ItemsSource = new List<int>( ) { 1, 2, 3, 4, 5 };
  }
}
...
Рейтинг: 0 / 0
Размеры TextBox
    #38974825
ЧитательX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Решение нашел.
Код: c#
1.
<DataGrid ... ColumnWidth="*" >


Спасибо Alexey2112 за участие.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Размеры TextBox
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]