Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在WPF上构建行用户控件?_Wpf_Visual Studio_Wpf Controls - Fatal编程技术网

如何在WPF上构建行用户控件?

如何在WPF上构建行用户控件?,wpf,visual-studio,wpf-controls,Wpf,Visual Studio,Wpf Controls,构建像Expression Blend中那样的行用户控件的最佳方法是什么? 几周前,我发布了一个类似的问题,并阅读了这篇文章: 但仍然没有找到解决办法 真正的问题是使用以下绘图例程: public LineControl() { startPoint = Mouse.GetPosition(null); _frgPen = new Pen(Brushes.Red, 3); } protected override void OnRender(DrawingContext

构建像Expression Blend中那样的行用户控件的最佳方法是什么? 几周前,我发布了一个类似的问题,并阅读了这篇文章:

但仍然没有找到解决办法

真正的问题是使用以下绘图例程:

public LineControl()
{
    startPoint = Mouse.GetPosition(null);
    _frgPen = new Pen(Brushes.Red, 3);    
}

protected override void OnRender(DrawingContext drawingContext)
{
    base.OnRender(drawingContext);

    Point p1 = this.PointFromScreen(startPoint);
    Point p2 = Mouse.GetPosition(this);

    drawingContext.DrawLine(_frgPen, p1, p2);
}
起点不是在WPF设计器上单击的点,稍后调整控件的大小将导致从与“真实”起点不匹配的起点重新绘制直线

有人能帮我吗