binding 相关问题

这个标签在不同的环境中意味着不同的东西;考虑使用较少模糊的标签来代替或另外。常见含义包括:依赖项注入和数据绑定到对象和应用程序组件之间的绑定。

JAXB 避免从 XSD 生成重复类

我有一个 xsd,其中有一个名为 toc 的元素在 xsd 中两次。它会导致 java 类生成错误。现在,我想编写 xml 绑定来解决这个问题。 我有一个 xsd,其中有一个名为 toc 的元素在 xsd 中两次。它会导致 java 类生成错误。现在,我想编写 xml 绑定来解决这个问题。 <jaxb:bindings schemaLocation="../DMS_Dokument.Versenden_response.xsd"> <jaxb:bindings node="xsd:element[@name='toc']"> <jaxb:factoryMethod name="TOC"/> </jaxb:bindings> </jaxb:bindings> 我得到的错误是 原因:无法解析schema。应该提供错误消息 为了避免 JAXB 从 XSD 生成重复的类,您可以使用本地或外部绑定为生成的类定义不同的名称。 <jaxb:bindings node="XPATH"> <jaxb:class name="YourDistinctName"/> </jaxb:bindings> Java 类名重复的一个原因是在全局绑定中使用 toplevel 作用域。 注意: localScoping 属性的值可以是 nested 或 toplevel。此属性描述嵌套 XML 模式组件与嵌套模式派生的 JAXB 类或顶级模式派生的 JAXB 类的 JAXB 绑定。为了避免嵌套组件之间的命名冲突,该属性的默认值是嵌套的。当模式组件嵌套太深或应用程序不希望使用嵌套类或使用 JPA 时(JPA 第 2.1 节,实体必须是顶级类),开发人员可以将 localScoping 自定义为 toplevel。 例如,下载此演示 (zip) 并考虑其 XML 架构 trilogy.xsd,该架构对 Trilogy 书籍进行建模。它在根 trilogy 元素上定义一个 TOC,并为每个 book 定义另一个 TOC。该架构将每个 TOC 定义为匿名类型,并且每个 TOC 都有不同的用途。第一个目录描述了三本书的标题,但第二个目录是每本书的章节列表。两者具有相同的元素名称 <toc>...</toc>,如该 XML 实例 trilogy.xml 所示,但需要不同的 Java 类定义。 当模式被定制为使用 <jaxb:globalBindings localScoping=”toplevel”/> 时,JAXB 会尝试根据一个元素名称生成两种类型,这会导致名称冲突。 为了解决 Java 类名重复问题,演示使用 HiSrc BasicJAXB 项目中的工具来扫描 XSD 并输出这些建议的绑定:trilogy.xjb。例如,这是书 TOC 的装订: <jaxb:bindings node="//xs:element[@name='trilogy']/xs:complexType/xs:sequence/xs:element[@name='book']/xs:complexType/xs:sequence/xs:element[@name='toc']/xs:complexType"> <jaxb:class name="TrilogyBookTocType"/> </jaxb:bindings> 绑定使用 XPATH 选择目标节点,并将 Java 类名称声明为 TrilogyBookTocType。 演示提供了一个 bash 脚本来运行该工具,但它可以像这样手动运行... java -cp \ $HOME/.m2/repository/org/patrodyne/jvnet/hisrc-basicjaxb-tools/2.1.1/hisrc-basicjaxb-tools-2.1.1.jar \ org.jvnet.basicjaxb.util.CreateToplevelXJBindings \ --nested src/main/resources/trilogy.xsd 该工具将其输出发送到 stdout,您可以在其中将其复制/粘贴到绑定文件或架构中。 执行 该演示是一个独立的 Maven 项目。您可以使用以下命令运行测试: mvn -Ptest clean test mvn -Pexec compile exec:java 方法 hisrc-higherjaxb-maven-plugin 配置为使用提供的 trilogy.xsd 模式和绑定文件 trilogy.xjb 生成 JAXB 类。该模式提供了命名空间 "http://org.example/trilogy",JAXB 使用它来使用自己的命名约定创建 Java package 名称。 作为一个选项,可以使用这些 XJC hisrc-basicjaxb-plugins 生成 Java 内置 Object 方法的更高级实现。特别是,示例项目使用 toString 插件来显示未编组的 Trilogy 对象的人类可读表示。 hisrc-basicjaxb-插件 <args> <arg>-no-header</arg> <arg>-XhashCode</arg> <arg>-Xequals</arg> <arg>-XtoString</arg> </args> 注意: 使用 XJC hisrc-basicjaxb-plugins 时,运行时类路径需要 hisrc-basicjaxb-runtime 依赖。 测试 JUnit 测试类 TrilogyTest.java 扫描示例文件并调用方法 checkSample(File sample) 将每个文件提供给测试人员。对于此项目,创建了一个 JAXBContext,并且 samples 路径中的每个文件都被 unmarshaled 为 Trilogy 对象。成功后,每个对象都会被编组以用于日志记录和您的审查。 示范 具有 main(...) 方法的 Java 标准引擎应用程序位于 org.example.trilogy.Main。该应用程序使用以下命令执行: mvn -Pexec compile exec:java -Dexec.args="src/test/samples/trilogy.xml" 免责声明:我是这些HiSrc项目的维护者。

回答 1 投票 0

JSF UISelectItems HtmlSelectOneListbox 绑定值 TimeZones

(注意:我对 jakarta.faces.component.UISelectItem 进行了子类化并重写了 toString,但现在下面的代码实际上是相同的,尽管我将来会删除对象搜索和 s...

回答 1 投票 0

如何反转 BooleanToVisibilityConverter?

我在 WPF 中使用 BooleanToVisibilityConverter 将控件的 Visibility 属性绑定到布尔值。这工作正常,但我希望其中一个控件在布尔值为 true 时隐藏,并显示...

回答 18 投票 0

ObservableCollection 在 WPF 中不会自动通知 UI

我正在尝试构建我的第一个基于 MVVM 模式的应用程序。 我仍然没有将视图与按钮单击操作隔离,因为我陷入了 ObservableCollection 的这个问题。 这些是课程:

回答 1 投票 0

绑定构造函数对象没有创建正确的对象

我是 JS 新手,尝试绑定构造函数对象: “严格使用”; 让 Person = 函数(名称){ this.name = 名称; } 令年龄 = { 年龄:128 } 让 AgedPerson = Person.bind(age) 安慰...

回答 1 投票 0

Maui MVVM,测试应用程序从登录 API 获取数据并在登录后将 FullName 传递到 MainPage 时出现问题,FullName=null 退出 ViewModel

1-我通过 MVC 创建一个 API 来获取 字符串 MaUserName, 字符串Ma密码, 国际米兰德, int MaStatus, 字符串 MaFullName 它与 Postman 和 swagger 配合得很好 2-我创建了一个项目...

回答 1 投票 0

使用 Azure 应用程序配置进行 QueueTrigger 绑定

我一直在寻找一种使用Azure“应用程序配置”来存储Azure存储队列的连接字符串的方法。在网上搜索了几个小时后,我更加困惑了——似乎有

回答 1 投票 0

Svelte 绑定选择值在获取时未更新

我在 Svelte (3) 中使用以下代码从 API 获取选项。随后的 s 依赖于第一个。我的期望是,当

回答 3 投票 0

从子视图到模型属性的弱绑定

我在使用绑定时遇到了 SwiftUI 视图模型中的内存泄漏。 我创建了 ObservableObject 模型,例如 最终类模型:ObservableObject { @Published var selectedValue:字符串?...

回答 1 投票 0

如何在c#代码后面将值绑定到gridview中的超链接

我有一个自定义网格,我在后面的 C# 代码中绑定了数据。我已经为我的专栏之一提供了超链接字段。如果我单击超链接值,它应该导航到...的详细信息页面

回答 4 投票 0

将列表中的多个变量绑定到一个组合框

我刚刚开始学习WPF和C#。 考虑: private void TransferAccountButtonClick(对象发送者, RoutedEventArgs e) { 列表 allClients = Client.JsonToList(); TransferStackP...

回答 1 投票 0

如何使用 TextBox 事件已更改,以便在 vb.net 中输入时不会始终出现消息框

如何使用 TextBox 事件已更改,以便在 vb.net 中输入时不会始终出现消息框。 实际上,如果文本框更改事件与数据库不匹配,则使用消息博...

回答 1 投票 0

WPF xml:lang/语言绑定

我如何绑定Listbox或texblock的Language属性(或xml:lang属性)。 我想在特定语言设置中显示月份名称 前任: 如何绑定Listbox或texblock的Language属性(或xml:lang属性)。 我想在特定语言设置中显示月份名称 例如: <TextBlock x:Name="Date" xml:lang="{Binding Lang}"> <TextBlock.Text> <MultiBinding StringFormat=" {0:dd.MMM.yyyy}-{1:dd.MMM.yyyy}"> <Binding Path="Date1"/> <Binding Path="Date2"/> </MultiBinding> </TextBlock.Text> 结果应根据 Lang 性质: 2011 年 4 月 1 日 - 2011 年 4 月 1 日 en-US 或 01.Nis.2011 - 02.Nis.2011 tr-TR 或者.... 它给出了 XamlParseException :语言属性无法转换为 System.Windows.Markup.XmlLanguage 类型(这不是确切的错误文本。) 有什么想法吗? 在应用程序的Startup事件中,添加以下指令: FrameworkElement.LanguageProperty.OverrideMetadata( typeof(FrameworkElement), new FrameworkPropertyMetadata( XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag))); 它将针对整个应用程序将 Language 属性的默认值覆盖为当前区域性。 编辑:好吧,我误解了你的问题...... 如果要将 Language 属性绑定到包含 IetfLanguageTag 的字符串,则需要一个转换器: [ValueConversion(typeof(string), typeof(XmlLanguage))] public class IetfTagToXmlLanguageConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { string tag = value as string; if (tag == null) return Binding.DoNothing; return XmlLanguage.GetLanguage(tag); } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { XmlLanguage lang = value as XmlLanguage; if (lang == null) return Binding.DoNothing; return lang.IetfLanguageTag; } } 在 XAML 资源中声明转换器: <local:IetfTagToXmlLanguageConverter x:Key="languageConverter" /> 并在绑定中使用转换器: <TextBlock Language="{Binding Lang, Converter={StaticResource languageConverter}}"> 您可以创建附加属性并使用它。 sealed class CultureBehavior { public static DependencyProperty CultureProperty = DependencyProperty.RegisterAttached("Culture", typeof (string), typeof (CultureBehavior), new UIPropertyMetadata(OnCultureChanged)); public static void SetCulture(FrameworkElement target, string value) { target.SetValue(CultureProperty, value); } public static string GetCulture(FrameworkElement target) { return (string) target.GetValue(CultureProperty); } private static void OnCultureChanged(DependencyObject target, DependencyPropertyChangedEventArgs args) { var element = target as FrameworkElement; if (element == null) return; element.Language = XmlLanguage.GetLanguage(args.NewValue.ToString()); } } XAML xmlns:local="clr-namespace:App.Utils" .... <TextBlock Text="{Binding Repairs, StringFormat=c}" local:CultureBehavior.Culture="{Binding CultureString}" /> 语言可以绑定到 CultureInfo 实例或 string 文化名称。 避免错误 属性“Language”的绑定不能使用目标元素的 Language 进行转换;如果需要区域性,则必须在 Binding 上显式指定 ConverterCulture 根据要求为该绑定设置 ConverterCulture: <Setter Property="Language" Value="{Binding CurrentUICulture.Name, Source={x:Static threading:Thread.CurrentThread}, ConverterCulture={x:Static globalization:CultureInfo.InvariantCulture}}"/> ( Source={x:Static threading:Thread.CurrentThread} 用作示例,如果语言绑定到 DataContext 中的属性,则应将其删除)

回答 3 投票 0

SwiftUI:显示工作表时绑定的 @State 变量未更新

我遇到了 SwiftUI 的问题,其中绑定的 @State 变量 (displayString) 在呈现工作表时似乎没有及时更新。提供的代码包含一个父视图(

回答 1 投票 0

Blazor WASM 中的 @bind-Value

我正在尝试在 Blazor 中使用嵌套双向绑定,但遇到了一个问题,我需要将 InputText 值绑定到对象的 prop。 我有一个模型传递给自定义表单组件......

回答 1 投票 0

MVVMCross 中动态绑定 UIWebView

我正在尝试对示例项目 Cirrious.Conference 进行更改。特别是在 SessionView 类和此类的 Touch View 中 https://github.com/slodge/MvvmCross-Tutorials/blob/master/...

回答 1 投票 0

SwiftUI:如何创建到环境对象属性的绑定?

以下最小代码通过按按钮切换详细信息的显示。 结构ContentView:视图{ @State var showDetails: Bool = false var body: 一些视图 { 虚拟堆栈{ ...

回答 1 投票 0

具有可绑定属性的IMarkupExtension

我为 ImageSource 创建了一个 IMarkupExtension,它从指定字体获取指定符号,并以指定颜色和指定高度显示它。大多数时候图标名称...

回答 3 投票 0

为什么我无法将listenfd与我的公共IPv4地址绑定,但我可以用我的公共IPv6地址绑定?

这是我的案例: 我从 https://whatismyipaddress.com/ 获取了公共 IPv6 和公共 IPv4,如下所示: IPv6: 2603:6080:1001:100:2042:----:----, IPv4:75.177.130.***。 然后我使用了下面的代码...

回答 1 投票 0

ListView 的 ItemTemplate 中使用的 AvalonEdit 中的挂钩命令不起作用

我在我的项目中使用了AvalonEdit控件。当我使用 Ctrl+C 或 Ctrl+V 等快捷键时,关联的复制/粘贴命令可以正常工作。我决定在上下文菜单中使用这些命令以获取更多信息...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.