Tag: xaml

XAML中的数据绑定资源文件

对于本地化我在.NET中使用资源文件(.resx文件)function,但我想知道是否有一种智能方法可以直接在XAML中对各种本地化属性进行数据绑定? 资源文件似乎只暴露静态属性,我无法弄清楚如何从viewmodel或其他资源字典绑定。 此外,如果可能的话,我希望它能在设计时与Expression Blend一起工作。

MVVM Datagrid默认选择第一行但未突出显示

我有一个datagrid绑定到我的ViewModel上的集合。 当窗口加载时,填充数据网格并设置SelectedItem。 (我知道这是因为我有一个绑定到所选项目的详细视图。)但是该行没有突出显示。 如果我点击该行,它将突出显示并正常工作。 当默认选择时,如何使所选行突出显示?

为什么要保持代码“干净”并在XAML中做所有事情?

保持代码“干净”的好处是什么? 很多时候,我在这里看到有关某人试图在XAML中执行等效操作而不是代码隐藏的post。 他们唯一的理由是他们希望将代码保持在“干净”之后。 如果我错了,请纠正我,但事实并非如此: XAML也被编译成BAML – 然后在运行时必须将其解析为代码。 XAML可能会有更多的运行时错误,因为编译器在编译时不会拾取它们 – 从错误的拼写 – 这些错误也更难调试。 已经存在代码 – 无论喜欢与否 InitializeComponent(); 必须运行它所包含的.gics文件包含一堆代码,尽管它可能是隐藏的。 这纯粹是心理上的吗? 我怀疑是开发人员来自网络背景,喜欢标记而不是代码。 编辑:我不提出代码而不是XAML – 同时使用 – 我更喜欢在XAML中进行绑定 – 我只是反对尽力避免在WPF应用程序中编写esp背后的代码 – 它应该是融合的两者都是为了充分利用它。

XML名称空间中不存在标记

这个错误似乎遍布整个地方,但每个人似乎都有自己的解决方案,其中没有一个解决了我的问题。 我收到的资源字典出错(后来合并)XML名称空间’clr-namespace:Company.Project.Module.Folder; assembly = Company.Project.Module’中不存在标签’ModelBindings’ 我引用的程序集是自定义的,包含在解决方案中。 不仅如此,我们已经查看了放入资源字典所在项目的bin中的dll,并且在检查之后它包含了我想要引用的类。 所以我知道1. dll是在正确的位置被访问并且在引用中。 2. dll包含我想要的数据。 以下是资源字典的一些代码 命名空间的列表 xmlns:modulemodel=”clr-namespace:Company.Project.Module.Folder;assembly=Company.Project.Module” 创建要引用的资源 就像其他人的错误一样,intellisense说它是犹太教徒。 此外,xmlns列表是使用intellisense的自动完成function创建的,并手动重新输入。 都没有奏效。 我也尝试将所有内容移动到app.xaml,它仍然给了我同样的错误。 如果我删除ResourceDictionary文件的主体,代码编译正常,但所有绑定都被破坏。 最后,所有资源定义过去都在使用它们的xaml文件中定义,工作正常。 它只是在我尝试从一个不起作用的不同项目创建它们之后。 我改变了这个来修复错误,回到旧方法可能会有问题。 编辑:这是我在显示我正在使用的资源字典方面能做的最好的事情 如果我用ResourceDictionary替换SharedResourceDictionary,则会发生相同的错误。 上面的app.xaml和SharedResourceDictionary在命名空间Company.Project.Main中进行了比较,并且它既引用了SharedResourceDictionary,也引用了我在上面的代码中放入的不同模块项目。 解 看起来它主要是用户错误。 但这可能发生在其他人身上。 当我从原始文件复制xmlns:moduleviewmodel定义时,我必须自己添加assembly =部分。 就像我说的那样,我自己也做了,并且使用自动填充来输入’xmlns:moduleviewmodel =’。 在我们发现错误之前,我们再次尝试了自动完成,因为我们发现7个名称空间中没有一个没有生成错误。 就在那时我注意到assembly路径上有一封信没有大写。 奇怪的是自动完成实际上自己插入了这个错误。 我们编译的时候注意到了这封错误的信件。 更奇怪的是,在我手动修复所有路径之后,我们再次尝试了自动完成,并且拼写正确。 我不知道错误的自动完成的原因,但固定的字母,它编译得很好。 现在我只是想知道是否有人会相信自动完成function正在改变我!

找不到Xamarin.Forms.Platform.Android.LabelRenderer(xamarin表单)的构造函数

当我在我的samsumg galaxy s5设备中测试我的应用程序时,我在pcl项目的xaml中有一个图像列表我这样做:我进入列表的页面,然后我按下操作栏上的后退按钮…我做了很多次……然后,它发生了: System.NotSupportedException:无法从本机句柄0x20e0001d(key_handle 0x42433c30)激活Xamarin.Forms.Platform.Android.Platform + DefaultRenderer类型的实例。 要么 无法从本机激活Xamarin.Forms.Platform.Android.LabelRenderer类型的实例 更新 我添加了这个脚本: using System; using Android.Runtime; using Xamarin.Forms; using Xamarin.Forms.Platform.Android; [assembly: ExportRenderer(typeof(Xamarin.Forms.Label), typeof(LabelRenderer))] namespace neoFly_Montana.Droid { /// /// This renderer was added to resolve a bug that crashed the application in known case /// Bug 36285 – Android App (Always) Crashes After Navigating Away From Page […]

WPF,在XAML中使用XPath和XmlDataProvider根据ComboBox中的选定值选择节点

这个问题与我之前的问题有关,但更具体。 假设我有两个ComboBox,一个填充了产品名称,另一个是空的。 选择产品时,我希望第二个ComboBox填充与该产品相关的数据。 我有以下XML: …more Component nodes… …more Product nodes… 我希望能够以某种方式在Component ComboBox上设置XPath ,以便从Product节点获取其@name属性等于Product ComboBox中当前选定值的所有Components/Component节点。 这可能吗? 我该怎么办? 这是我到目前为止在XAML中的内容: Product ComboBox中填充了MyProduct1等产品名称,因此该部分很好。 这是我需要帮助的依赖组件ComboBox。

如何在C#中为在WPF中的XAML中声明的矩形着色?

如何在C#中为在WPF中的XAML中声明的矩形着色? XAML中有一个矩形控件。 在我的C#代码中,有时候填充背景颜色会很好。 怎么做到这一点?

重新评估由标记扩展计算的xaml页面中的所有值

在xaml页面上的xamarin应用程序中,我使用xaml扩展加载本地化字符串(详细信息在此处描述)。 例如: 现在,我希望用户能够在运行时更改应用程序的语言(使用选择器)。 如果发生这种情况,我想立即更改语言。 我可以以某种方式重新加载所有翻译的文本? 我可以删除所有页面并重新创建它们,但我试图避免这种情况。 我还可以将所有本地化文本绑定到页面模型中的字符串。 但这对于真正的静态字符串来说是很多不必要的代码。

Windows Phone 8 – 在项目中的现有txt文件中读取和写入

嗨,我遇到了问题,我创建了一个txt文件,我把它放在应用程序上。 我试图从中读取我之前写的内容。 使用该代码: public async Task WriteDataToFileAsync(string fileName, string content) { byte[] data = Encoding.Unicode.GetBytes(content); var folder = ApplicationData.Current.LocalFolder; var file = await folder.CreateFileAsync(fileName,CreationCollisionOption.ReplaceExisting); using (var s = await file.OpenStreamForWriteAsync()) { await s.WriteAsync(data, 0, data.Length); } } public async Task ReadFileContentsAsync(string fileName) { var folder = ApplicationData.Current.LocalFolder; try { var file = await folder.OpenStreamForReadAsync(fileName); using […]

如何防止回到上一页

对于我正在开发的Windows Phone 8应用程序,我必须在应用程序启动时加载一些数据。 为此,我设计了一个名为SplashScreen.xaml的页面来加载数据,在完成所有加载后,我使用以下方法导航到MainPage.xaml : NavigationService.Navigate(new Uri(“/MainPage.xaml”, UriKind.Relative)); 现在,当用户在主页面并点击手机上的后退按钮而不是退出应用程序(这是默认手势)时,回到SplashScreen.xaml ,使他们无法退出应用程序(除了用于点击将应用程序带到背景的开始按钮,当然给他们留下了不好的印象。 问题是如何防止回到上一页谢谢大家。