WPF DataGridTextColumn多行输入

发布于 2024-11-15 12:34:27 字数 389 浏览 2 评论 0原文

我在 .NET 4 中使用具有 DataGridTextColumn 的 WPF DataGrid 控件。

我希望能够输入多行文本。 当我将数据绑定到列时,换行符的格式正确,但我没有找到在编辑文本时创建换行符的方法。

<DataGrid ItemsSource="{Binding MyMessages}">
   <DataGrid.Columns>
      <DataGridTextColumn Header="Message" Binding="{Binding Path=Message}"  Width="Auto"/>
   <DataGrid.Columns>
</DataGrid>

有什么建议吗?

I am using the WPF DataGrid control in .NET 4 that have a DataGridTextColumn.

I want to be able to enter multi-line text.
The line breaks are formatted correctly when I bind data to the column, but I've found no way of creating the line breaks when editing the text.

<DataGrid ItemsSource="{Binding MyMessages}">
   <DataGrid.Columns>
      <DataGridTextColumn Header="Message" Binding="{Binding Path=Message}"  Width="Auto"/>
   <DataGrid.Columns>
</DataGrid>

Any suggestions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

楠木可依 2024-11-22 12:34:27

尝试:

<DataGridTextColumn Header="Message" Binding="{Binding Path=Message}"  Width="Auto">
        <DataGridTextColumn.ElementStyle>
            <Style TargetType="TextBlock">
                <Setter Property="TextWrapping" Value="Wrap" />
            </Style>
        </DataGridTextColumn.ElementStyle>
        <DataGridTextColumn.EditingElementStyle>
            <Style TargetType="TextBox">
                <Setter Property="TextWrapping" Value="Wrap" />
                <Setter Property="AcceptsReturn" Value="true" />
            </Style>
        </DataGridTextColumn.EditingElementStyle>
    </DataGridTextColumn>

Try:

<DataGridTextColumn Header="Message" Binding="{Binding Path=Message}"  Width="Auto">
        <DataGridTextColumn.ElementStyle>
            <Style TargetType="TextBlock">
                <Setter Property="TextWrapping" Value="Wrap" />
            </Style>
        </DataGridTextColumn.ElementStyle>
        <DataGridTextColumn.EditingElementStyle>
            <Style TargetType="TextBox">
                <Setter Property="TextWrapping" Value="Wrap" />
                <Setter Property="AcceptsReturn" Value="true" />
            </Style>
        </DataGridTextColumn.EditingElementStyle>
    </DataGridTextColumn>
木落 2024-11-22 12:34:27
xmlns:wtk="clr-namespace:Xceed.Wpf.Toolkit;assembly=Xceed.Wpf.Toolkit"

<DataTemplate x:Key="dataGridMultiLineTextBoxTemplateColumn" DataType="your data type">
        <wtk:MultiLineTextEditor
            x:Name="MultiLineTextBox"
            Width="300"
            Margin="2"
            Padding="5,0,0,0"
            FontSize="12"
            FontWeight="Normal"
            Foreground="Black"
            IsSpellCheckEnabled="True"
            Text="{Binding your binding property, Mode=TwoWay, NotifyOnTargetUpdated=True, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}"
            TextWrapping="Wrap" />
    </DataTemplate>

扩展的 WPF 工具包 MultiLineTextEditor 将提供您所需的内容。
扩展 WPF 工具包 MultiLineTextEditor

xmlns:wtk="clr-namespace:Xceed.Wpf.Toolkit;assembly=Xceed.Wpf.Toolkit"

<DataTemplate x:Key="dataGridMultiLineTextBoxTemplateColumn" DataType="your data type">
        <wtk:MultiLineTextEditor
            x:Name="MultiLineTextBox"
            Width="300"
            Margin="2"
            Padding="5,0,0,0"
            FontSize="12"
            FontWeight="Normal"
            Foreground="Black"
            IsSpellCheckEnabled="True"
            Text="{Binding your binding property, Mode=TwoWay, NotifyOnTargetUpdated=True, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}"
            TextWrapping="Wrap" />
    </DataTemplate>

Extended WPF Toolkit MultiLineTextEditor will provide what you need.
Extended WPF Toolkit MultiLineTextEditor

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文