Tag: wpf

在WPF中命中测试

我在Canvas上有一个Ellipse ,我正在对其进行命中测试。 每次我点击Ellipse的笔划时,测试都会通过。 如果我单击Ellipse的中间,测试将失败。 这很好! 在我填充椭圆之后: myEllipse.Fill = new SolidColorBrush(Colors.Blue); ,当我点击Ellipse的中间时,测试pasess。 我怎么能禁用它? (即使Ellipse填充,当我点击中间时测试也会失败)谢谢!

如何使用StaticResource在XAML中定义DataContext

我想通过XAML中的静态资源声明一个DataContext,作为Northwind数据库中Customers的绑定。 我可以在代码(C#)中轻松完成此操作,但想学习如何在XAML中完成。 我已经尝试了所有可以找到的例子,但它们都不适合我。 我认为问题出在我标记为[Option1]和[Option2]的两行XAML代码行中。 你能澄清一下这个语法究竟应该是什么吗? C# namespace DataGridEF { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); bModel1 bNorthWind = new bModel1(); //this.DataContext = bNorthWind; bNorthWind.GetCustomers(); } } } namespace DataGridEF { public class bModel1 { List _Customers; public List Customers { get { return _Customers; } set { _Customers = value; […]

WPF控件中的SlimDX视口

我正在从WinForms / XNA过渡到WPF / SlimDX,因为: a)WPF相对于WinForms的所有好处(但学习曲线=哎哟!) b)我想将多个SlimDX视口附加到Panels。 XNA有1个“游戏”屏幕。 c,最后和最小)DirectX 10支持 我之前的所有XNA代码都在C#中。 我无法弄清楚如何在高级别上将其移植到SlimDX和WPF。 我疯了似的搜索。 我发现的最接近的是: 1) http://www.gamedev.net/community/forums/topic.asp?topic_id=507941许多文章指出了这个讨论,但它不完整,我无法弄清楚XAML,我得到设备错误附加所有遗漏的_slimDXDevice和Window1事件。 2) http://www.codeproject.com/KB/WPF/D3DImage.aspx本文假设用户正在移植C ++。 我正在移植非常接近MDX代码的XNA代码。 如果我能够获得一个带有自定义SlimDX驱动视口的WPF表单只是一个蓝色框,我可以从那里开始。 在XNA中,我渲染了许多单独的RenderTargets并将它们全部放在屏幕上,现在我想将它们附加到控件上。 但首先,只有一个蓝盒子! :d 有任何想法吗? 我觉得这很简单,或者有一些我不知道的“千篇一律”代码。 非常感激!

如何在WPF中使用XNA?

所以…我想制作一个游戏,我想用C#编写它。 在过去,我使用C ++和OpenGL制作了马里奥克隆。 我非常喜欢OpenGL,但我不知道它在C#/ WPF中的支持程度如何。 此外,使用实际的游戏库可能是有益的吗? 我猜XNA是C# 的游戏库,所以也许我会投入一些时间来学习它。 但是,我想在我的关卡编辑器中使用WPF表单控件…有什么办法可以在WPF应用程序中嵌入一个XNA(DirectX?)窗口? 具体来说,我不需要XNA / DirectX小部件内的任何按钮或东西,只需要它,所以不需要混合……只需要在我的WPF表单中获取图形小部件。

如何在wpf中设置内部TextBoxView上的边距

我有一个案例,我想最小化文本框的水平填充。 使用snoop我发现文本框由多个子控件组成。 其中一个是TextBoxView,边距为2,0,2,0 TextBoxView是一个内部wpf组件,没有公共API。 你会如何摆脱“内部填充”?

如何在vs2008中更改msi安装程序包的图标,并在为c#项目创建包后更改用户界面屏幕

我正在尝试更改msi安装程序包的图标。 我没有找到任何解决方案。 此外,我试图更改msi安装程序包的用户界面。 我为该界面获得了一些皮肤,但这是跟踪版本..任何人都知道请帮助我解决上述问题。

停止ItemsControls共享filter

我有两个ItemsControl,一个是ListView,另一个是我正在开发的自定义控件。 我已将两个控件的ItemsControl.ItemsSource属性设置为相同的IEnumerable对象,在本例中为List。 我将filter应用于我的自定义控件的ItemsControl.Items属性(this.Items.Filter = myFilter),我的控件按预期刷新,仅显示与filter匹配的项目。 但是,ListView使用与ItemsControl.ItemsSource属性相同的IEnumerable对象也会刷新,仅显示与我应用于自定义控件的filter匹配的项目。 任何人都可以告诉我如何保持我的自定义控件中的filter不影响我的列表视图中的项目?

无法在后面的代码中设置图像源

关于在后面的代码中设置图像源有很多问题和答案,例如在代码中设置WPF图像源。 我已经按照所有这些步骤进行操作,但却无法设置图像。 我在VS2010中使用WPF C#进行编码。 我将所有图像文件放在名为“ Images ”的文件夹下,所有图像文件都设置为Copy always 。 按照文档中的说明,“ 构建操作”设置为“ 资源” 。 我的代码如下。 我在XAML中设置了一个dog.png并将其更改为后面代码中的cat.png 。 // my XAML // my C# BitmapImage img = new BitmapImage(); img.UriSource = new Uri(@”pack://application:,,,/FooApplication;component/Images/cat.png”); imgAnimal.Source = img; 然后我得到一张空虚的空白图像。 我不明白为什么.NET会使图像设置如此复杂…… [编辑] 以下是有效的 imgAnimal.Source = new BitmapImage(new Uri(@”pack://application:,,,/FooApplication;component/Images/cat.png”)); 它有效,但我看不出这两个代码有什么区别。 为什么早先不起作用而后者呢? 对我来说他们是一样的..

如何在30秒后删除文件?

我正在开发一个C#项目,我需要在30秒后删除该文件。 因此,一旦文件发送到机器,我需要软件计数到30秒,然后让… 显示一个启动窗体 ,然后删除该文件。 请帮帮我。 所以在我的情况下,我将文件复制到bin / debug文件夹。 30秒后我需要删除文件.. 这是我的代码: private void button4_Click(object sender, EventArgs e) { //string filePath = image_print(); // MessageBox.Show(filePath, “path”); string s = image_print() + Print_image(); if (String.IsNullOrEmpty(s) || img_path.Text == “”) { return; } else { PrintFactory.sendTextToLPT1(s); //after this the i need the another form to pop up.. lets say […]

如何在不改变基于当前位置X和Y的纵横比的情况下调整旋转控件的大小?

目前我使用了以下代码,它工作正常,但不尊重宽高比: private double angle; private Point transformOrigin; private ContentControl designerItem; public ResizeThumb() { DragStarted += new DragStartedEventHandler(this.ResizeThumb_DragStarted); DragDelta += new DragDeltaEventHandler(this.ResizeThumb_DragDelta); } private void ResizeThumb_DragStarted(object sender, DragStartedEventArgs e) { this.designerItem = DataContext as ContentControl; if (this.designerItem != null) { this.transformOrigin = this.designerItem.RenderTransformOrigin; RotateTransform rotateTransform = this.designerItem.RenderTransform as RotateTransform; if (rotateTransform != null) this.angle = rotateTransform.Angle […]