相关疑难解决方法(0)

WPF中的Application.DoEvents()在哪里?

我有以下示例代码,每次按下按钮时缩放:

XAML:

<Window x:Class="WpfApplication12.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">

    <Canvas x:Name="myCanvas">

        <Canvas.LayoutTransform>
            <ScaleTransform x:Name="myScaleTransform" />
        </Canvas.LayoutTransform> 

        <Button Content="Button" 
                Name="myButton" 
                Canvas.Left="50" 
                Canvas.Top="50" 
                Click="myButton_Click" />
    </Canvas>
</Window>
Run Code Online (Sandbox Code Playgroud)

*的.cs

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }

    private void myButton_Click(object sender, RoutedEventArgs e)
    {
        Console.WriteLine("scale {0}, location: {1}", 
            myScaleTransform.ScaleX,
            myCanvas.PointToScreen(GetMyByttonLocation()));

        myScaleTransform.ScaleX =
            myScaleTransform.ScaleY =
            myScaleTransform.ScaleX + 1;

        Console.WriteLine("scale {0}, location: {1}",
            myScaleTransform.ScaleX,
            myCanvas.PointToScreen(GetMyByttonLocation()));
    }

    private Point GetMyByttonLocation()
    {
        return new Point(
            Canvas.GetLeft(myButton),
            Canvas.GetTop(myButton));
    }
}
Run Code Online (Sandbox Code Playgroud)

输出是:

scale 1, location: …
Run Code Online (Sandbox Code Playgroud)

.net c# wpf xaml

82
推荐指数
5
解决办法
8万
查看次数

WPF ListBox滚动到自动结束

在我的申请中,我有一个ListBox项目.该应用程序是用WPF编写的.

如何自动滚动到最后添加的项目?我希望在ScrollViewer添加新项目时将其移动到列表的末尾.

有什么事ItemsChanged吗?(我不想使用这个SelectionChanged活动)

wpf scroll listbox

40
推荐指数
8
解决办法
5万
查看次数

WPF中高效的实时日志查看器

我想在WPF中有一个高效的日志查看器控件,它只是在添加消息时显示实时日志.连接来自日志系统的通知没有问题,但是我担心一旦日志数量变大,日志窗口就会随着每个追加的日志行进行爬行.

日志通知事件将只提供一个日志字符串(以及一些元数据),我想要附加到TextBox中的行或带有滚动条的类似行.假设有足够的内存,附加大量的行不应该是内存问题,但我不希望一旦添加行号10,000,系统就会变慢.

我假设一旦字符串进入MB大小和数千行,将TextBox绑定到简单的字符串依赖属性将变得相当慢.

如何在WPF中有效地编写这样的控件?

wpf

8
推荐指数
1
解决办法
7989
查看次数

在WPF中呈现日志视图的快速方法是什么?

我正在编写一个需要类似日志视图的应用程序(类似于IM客户端在对话中显示消息的方式),每秒可能有很多更新.速度是一个问题; 由于大量传入事件导致应用程序锁定是一个可能的问题.我需要选择和基本的文本格式,所以手动渲染可能会变得非常复杂,我想尽可能避免它.我还想底部锚定滚动条,也就是说,如果它在底部,则在添加新项目时保持在底部.实现这个的好方法是什么?

c# wpf

2
推荐指数
1
解决办法
2637
查看次数

标签 统计

wpf ×4

c# ×2

.net ×1

listbox ×1

scroll ×1

xaml ×1