Tag: xaml

确定哪个CustomPopupPlacement用于WPF Popup

我试图弄清楚当弹出窗口实际呈现时,已经使用了哪些传入的CustomPopupPlacement位置数组。 是否有任何事件可以检测到这个? 这个来自2009年的msdn线程似乎正是我的问题,但似乎没有答案。 http://social.msdn.microsoft.com/Forums/da/wpf/thread/4c6d216a-0011-4202-aa7e-2fccef3cc355 标记的答案似乎无效,我的情况与线程中的OP完全一样。 我将弹出4个路径并使用DP在三条路径上切换可见性,以选择正确呈现的箭头路径。 因此,假设我们通过CustomPopupPlacementCallback委托提供4个放置选项,是否有办法检测系统在处理屏幕边缘情况和排序后最终选择的4个位置中的哪个位置。

如何将简单的字符串值绑定到文本框?

我正在使用wpf。 我想绑定一个文本框,其中包含在xaml.cs类中初始化的简单字符串类型值。 TextBox没有显示任何内容。 这是我的XAML代码: 而C#代码是这样的: public partial class EntitiesView : UserControl { private string _name2; public string Name2 { get { return _name2; } set { _name2 = “abcdef”; } } public EntitiesView() { InitializeComponent(); } }

WP7 GestureListener上图像宽度/高度的约束

我添加了GestureListener到一个图像我试图像这样的Stack Overflow回答这里: 如何放大和缩小WP7中的图像? 问题是图像不会停止缩放,并覆盖页面上的其他控件。 这包括页面上的一些重要按钮。 此外,它允许图像变得如此之小以至于很难使图像变得更大,并且允许图像离屏幕太远而太难以将图像带回来。 我的目标是:将图像保留在分配给它的网格行中,而不是覆盖其他控件。 防止图像的宽度/高度变小。防止变得太大的宽度/高度防止图像被拖出屏幕。 有办法解决这个问题吗? GestureListener不会修改Image对象的宽度/高度,所以我不能简单地做 Image i = sender as Image; if (i.Height == TOO_BIG) return; …

ProgressRing Control在哪里?

我正在尝试编写基于Windows Phone 8 SDK的应用程序。 我一直看到提到ProgressRing控件,但我没有在工具箱或xaml设计器中看到它。 我该如何使用它?

WPF如何使用validation和绑定创建自定义文本框

我正在开发一个用于货币编辑的自定义文本框。 我已经看到一些准备使用它们,但它们很复杂和/或实际上不可用,迫使你做坏事(比如硬编码应该在控件上使用的名称)。 所以我决定自己做,但是我无法使用绑定选项,因为分配给绑定属性的属性必须是小数,但TextBox控件的Text属性接受字符串。 我想的答案可能是覆盖基类(TextBox)中Text属性的访问方法(getter和setter),但是不允许这样做。 我的绑定应该设置为值,它设置TextBox的text属性,将其格式化为文本(带有货币符号和所有内容),但将其转换回Get方法上的数值数据类型。 这是我到目前为止所取得的成就: public class CurrencyTextBox : TextBox { private bool IsValidKey(Key key) { int k = (int)key; return ((k >= 34 && k = 74 && k <= 83) //numeric keypad 0 to 9 || (k == 2) //back space || (k == 32) //delete ); } private void Format() { […]

如何访问XAML DataTemplate Listview中的元素而不与其进行交互

我有一个C#Store应用程序并使用DataTemplate选择器来确定在绑定到Array的ListView控件中使用哪种类型的Template。 因为它是模板化的,所以我无法为每个ListView行分配动态x:名称。 我需要能够通过索引访问列表视图行并将它们的可见性设置为开或关。 我尝试过这样的东西,但是.ItemContainerGenerator .ContainerFromItem(item); 返回null ,每次都得到一个Nullableexception: 如何访问XAML DataTemplate中的控件? 经过一些研究后,似乎上述解决方案仅在我触摸或设置了SelectedItem时才有效。 看这里 为什么ItemContainerGenerator返回null? 我需要能够在页面加载(初始设置)和按钮单击上调用方法,并修改某些行可见性。

有没有办法在等待输入时有倒数计时器?

我正在尝试在计时器用完之前创建一个需要用户输入的简单游戏。 基本上,页面将加载一段时间,并等待用户说出正确的答案。 如果时间用完,游戏就结束了,但如果用户做对了,他就会继续讨论下一个问题。 (我已经完成了演讲部分,我只需要弄清楚计时器) 有一个简单的方法来实现这一目标吗?

如何在不更改viewmodel的属性getter的情况下格式化XAML中的字符串?

我在我的应用程序中有以下界面: public interface IContactMedium { string ContactString { get; set; } string Type { get; set;} bool IsValid(); } 此接口用于表示某人的某种联系的对象。 它可以是电话,电子邮件等ContactString属性是实际的联系人数据(例如,对于电话,它将是电话号码),并且Type用于区分,以防一个人有多个(用于手机,一个人可以拥有家庭电话,工作电话,手机等。) IsValid方法是每种不同类型的接触媒体的validation机制。 所以,假设我的应用程序中有两个对象 – Email和Phone – 都实现了界面。 我将在应用程序中创建一个UserControl ,它包含一个管理此类对象列表的UI。 所以viewmodel看起来像这样: public class ContactsCollectionViewModel : ViewModelBase where T : class, IContactMedium { private ObservableCollection _itemsCollection; public ContactCollectionViewModel(ObservableCollection items) { ItemsCollection = items; } public ObservableCollection ItemsCollection […]

如何从BackgroundWorker线程中更新标签?

当我使用WinForms时,我会在我的bg_DoWork方法中完成此bg_DoWork : status.Invoke(new Action(() => { status.Content = e.ToString(); })); status.Invoke(new Action(() => { status.Refresh(); })); 但是在我的WPF应用程序中,我收到一条错误,指出Label不存在Invoke 。 任何帮助,将不胜感激。

无法使用pack URI设置ImageSource

我正在尝试使用包uri设置图像源,如下所示: 使用这样的Resources.resx文件: 像这样的图像: 但我得到的错误是这样的: 我也试过这个: 打包URI和路径不解析WPF中的图像 还有这个: 在设计时包uri是有效的,但不是在运行时? 还有这个: Resources in WPF – I (Binary Resources) 虽然仍然得到与上面相同的错误。 有人,因为对宙斯的爱,将我从这种卑鄙,令人沮丧的垃圾中解放出来,我将以赞美和积分回报我。