MVVM 模式下 ScrollViewer 用户控件的 LineUp 等方法的调用

发布于 2024-11-07 06:19:41 字数 760 浏览 1 评论 0原文

我有一个 WPF 3.5 MVVVM 应用程序,它在 ScrollViewer 中有一个 TextBlock。我希望每当文本块中有换行符时都能够调用控件的 LineUp/LineDown 方法。

我如何在不违反任何 MVVM 原则的情况下实现这一点?

提前致谢,

萨蒂亚

            <Border BorderThickness="1" BorderBrush="Gray" CornerRadius="1" Margin="2" Grid.Row="0" Grid.Column="3" Grid.RowSpan="2">
                <ScrollViewer Name="Scroll" VerticalScrollBarVisibility="Auto" MinWidth="120" Height="80" 
                              CanContentScroll="True" 
                              >
                    <TextBlock TextWrapping="WrapWithOverflow" Padding="5" FontSize="10" Text="{Binding Path=GetScrollLogMessage}" DockPanel.Dock="Left" />
                </ScrollViewer>
            </Border>

I have a WPF 3.5 MVVVM application which has a TextBlock in a ScrollViewer. I want to be able to call the LineUp/LineDown method of the control whenever there is a newline in the text block.

How do I implment this without violating any MVVM principles?

Thanks in advance,

Satya

            <Border BorderThickness="1" BorderBrush="Gray" CornerRadius="1" Margin="2" Grid.Row="0" Grid.Column="3" Grid.RowSpan="2">
                <ScrollViewer Name="Scroll" VerticalScrollBarVisibility="Auto" MinWidth="120" Height="80" 
                              CanContentScroll="True" 
                              >
                    <TextBlock TextWrapping="WrapWithOverflow" Padding="5" FontSize="10" Text="{Binding Path=GetScrollLogMessage}" DockPanel.Dock="Left" />
                </ScrollViewer>
            </Border>

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

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

发布评论

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

评论(2

帥小哥 2024-11-14 06:19:41

在视图模型中引发事件,并在视图的代码隐藏中处理该事件。

Raise an event in your view model, and handle the event in the view's code-behind.

七色彩虹 2024-11-14 06:19:41

当 textblock.textChanged 事件触发时,您可以执行 ScrollViewer.scrollToBottom()。

You can execute ScrollViewer.scrollToBottom() when textblock.textChanged event fires.

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