标签: binding

xpath:前缀必须解析为名称空间:xsd

我是使用 jaxb2 的菜鸟。我收到此错误:“xpath:前缀必须解析为命名空间:xsd”,我不知道如何修复它。发生这种情况是因为我有两个 xsd 文件试图设计相同的类,但位于我的 java 应用程序的不同包中

<jxb:bindings schemaLocation="../documentazione/xsd/Global/datatypes_global_v62.xsd">

        <jxb:schemaBindings>
            <jxb:package name="com.companyname.plugin.entities.global" />
        </jxb:schemaBindings>

        <jxb:bindings node="//xsd:complexType[@name='Contact']">
            <jxb:class name="GlobalContact" />
        </jxb:bindings>

    </jxb:bindings>


    <jxb:bindings schemaLocation="../documentazione/xsd/Global/pickupdatatypes_global-3.0.xsd">
        <jxb:schemaBindings>
            <jxb:package name="com.companyname.plugin.entities.pickup" />
        </jxb:schemaBindings>
        <jxb:bindings node="xsd://complexType[@name='contact']" >
            <jxb:class name="Contact" />
        </jxb:bindings>
    </jxb:bindings>
Run Code Online (Sandbox Code Playgroud)

我已经尝试运行该插件,但我不知道如何修复该错误。

java binding namespaces jaxb maven

1
推荐指数
1
解决办法
3388
查看次数

MouseWheel 上下绑定在 tkinter 中不起作用

我正在使用以下代码 -

self.table.Table.bind("<MouseWheel-Down>", lambda x: self.table.shiftTable('right'))
self.table.Table.bind('<MouseWheel-Up>', lambda x: self.table.shiftTable('left'))          #mousewheel up and down not working for unknown reasons
self.table.Table.bind('<KeyPress-Left>', lambda x: self.table.shiftTable('left'))
self.table.Table.bind('<KeyPress-Right>', lambda x: self.table.shiftTable('right'))
self.table.Table.bind('<Enter>', lambda x: self.table.Table.focus())
self.table.Table.bind('<Leave>', lambda x: self.mainUI_object.fg_root.focus())
Run Code Online (Sandbox Code Playgroud)

这里的问题是鼠标滚轮绑定不起作用,但没有给出错误。另一方面,以下代码段有效(注意缺少向上和向下说明符)-

self.table.Table.bind("<MouseWheel>", lambda x: self.table.shiftTable('right'))
Run Code Online (Sandbox Code Playgroud)

不工作的可能原因是什么?如何解决才能正常工作?

python binding tkinter

1
推荐指数
1
解决办法
1364
查看次数

Go如何将方法绑定到对象?

我几天前刚刚开始学习 Go。今天,我们在调试一段代码一段时间时,发现了一些看起来与 Go 违反直觉的事情。

首先我们定义了一个接口和一个实现它的数据结构。

type Executer interface {
    Execute()
}

type whatever struct {
    name string
}

func (this *whatever) Execute() {
    log.Println(this.name)
}
Run Code Online (Sandbox Code Playgroud)

现在考虑我有一个 nil 指针,whatever并且我尝试调用该方法Execute。在我迄今为止使用过的其他面向对象语言中,这会在调用方法(即w.Execute())时调用空指针错误,因为对象指针为空。有趣的是,在Go中,调用该方法时,Execute当我尝试取消引用时,该方法会发生空指针错误this.name。为什么不在调用该方法时呢?

func main() {
    var w *whatever
    w.Execute()
}
Run Code Online (Sandbox Code Playgroud)

所以,我现在想了解的是,这怎么可能?这是否意味着 Go 仅在编译时进行早期方法绑定,而在运行时没有方法与特定对象的绑定?

methods binding pointers go

1
推荐指数
1
解决办法
2843
查看次数

Matblazor组件属性:内容复杂

我正在尝试制作一个按钮,如果某个条件为假,该按钮将被禁用。对于常规按钮,这有效:

<button @disabled="!IsReady">Click me</button>
@code
{
    public bool IsReady { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我正在使用 MatBlazor 库,其MatButton版本为button

<MatButton Disabled="@!IsReady">Click me</MatButton>
Run Code Online (Sandbox Code Playgroud)

后者不起作用:它给出以下错误:

组件属性不支持复杂内容(混合 C# 和标记)

在好的 WPF 中,我们可能会在绑定中使用转换器,因此绑定的布尔值是反转的。这是 MatBlazor 的限制吗?

我看到的快速解决方案是执行以下操作:

<MatButton Disabled="@IsNotReady">Click me</MatButton>
@code
{
    public bool IsReady { get; set; }
    public bool IsNotReady => !IsReady;
}
Run Code Online (Sandbox Code Playgroud)

有没有更好的办法?

binding blazor matblazor

1
推荐指数
1
解决办法
1982
查看次数

C# 将整个 appSettings 文件绑定到类

在 C# 中,我们可以将 appSettings 中的一些设置绑定到类,例如:

var connectionStrings = new ConnectionStrings();
var sectionConnectionString = Configuration.GetSection("ConnectionStrings");
Run Code Online (Sandbox Code Playgroud)

在应用程序设置中,它如下所示:

{
  "Logging": {
    "LogLevel": {
      "Default": "Warning"
    }
  },
  "AllowedHosts": "*",
  "ConnectionStrings": {
Run Code Online (Sandbox Code Playgroud)

当我想绑定日志记录时,我需要调用另一个绑定:

Configuration.GetSection("Logging");
Run Code Online (Sandbox Code Playgroud)

如何绑定整个 appsettings 文件?GetSection空字符串不起作用:

Configuration.GetSection("");
Run Code Online (Sandbox Code Playgroud)

c# configuration binding appsettings

1
推荐指数
1
解决办法
3995
查看次数

为什么我的依赖属性绑定没有按预期工作?

我正在尝试制作一个包含 ListView 的自定义 UserControl。我想将 SelectedItem 属性绑定到我的视图模型。因此,我在用户控件中创建了一个 DP,并将 ListView 的 SelectedItem 属性绑定到新的依赖属性。

        public static readonly DependencyProperty SelectedItemProperty = DependencyProperty.Register(
            "SelectedItem",
            typeof(object), 
            typeof(DragAndDropListView),
            new PropertyMetadata(SelectedItemPropertyChangedCallback));

        private static void SelectedItemPropertyChangedCallback(DependencyObject d, 
        DependencyPropertyChangedEventArgs e)
        {
            if (d is DragAndDropListView dragAndDropListView)
            {
            }
        }

        public object SelectedItem
        {
            get => GetValue(SelectedItemProperty);
            set => SetValue(SelectedItemProperty, value);
        }
Run Code Online (Sandbox Code Playgroud)

然后在 xaml 代码中我进行了绑定

            <ListView Name="ListView"
                      PreviewMouseLeftButtonDown="ListViewPreviewMouseLeftButtonDown"
                      AllowDrop="True"
                      MouseMove="ListViewMouseMove"
                      DragEnter="ListViewDragEnter"
                      Drop="ListViewDrop"
                      SelectedItem="{Binding Path= SelectedItem}"/>
Run Code Online (Sandbox Code Playgroud)

为了确保它有效,我将 UserControl 作为 DataContext 分配给 ListView

        public DragAndDropListView()
        {
            InitializeComponent();
            ListView.ItemsSource = Items;
            ListView.DataContext = this; …
Run Code Online (Sandbox Code Playgroud)

c# wpf binding dependency-properties mvvm

1
推荐指数
1
解决办法
474
查看次数

Svelte 每个工作两次/每个绑定错误(无法设置未定义的属性)

我正在尝试将元素绑定在{#each}块中并通过单击删除它们。

    <script>
        const foodList = [
          { icon: '', elem: null, },
          { icon: '', elem: null, },
          { icon: '', elem: null, },
        ]; 
        const remove = (index) => { 
          foodList.splice(index, 1);
          foodList = foodList;
        };
    </script>

    {#each foodList as {icon, elem}, index}
      <div 
        bind:this={elems[index]}
        on:click={remove}
      >
        {icon}
      </div>
    {/each}

Run Code Online (Sandbox Code Playgroud)

在我的代码中我遇到了两个问题:

  • {#each}迭代次数比他应该做的多两倍
  • 通过单击绑定元素删除数组中的项目后 - svelte 引发错误“无法设置未定义的属性”

为什么它会这样工作?

each binding bind svelte

1
推荐指数
1
解决办法
832
查看次数

XAML、绑定、源和路径

我正在学习了解 .NET MAUI 的 XAML 中的绑定机制如何工作。我假设这对于所有 XAML 项目、WPF、MAUI 等都是相同的。

\n

最后是整个 XAML。

\n

这个 XAML 工作正常:

\n
<Button WidthRequest="150" Text="Add Activity" \n                Command="{Binding AddActivityEntityCommand}"\n                IsEnabled="{Binding IsNotBusy}"\n                Grid.Row="2"\n                Margin="8"/>\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  • 这是因为 Button 是 ContentPage 的一部分,它被x:DataType设置为MainPageViewModel,这是命令所在的位置吗?

    \n
  • \n
  • Binding 设置为AddActivityEntityCommand,而实际方法签名为\n
    async Task AddActivityEntityAsync()。这是如何解决的?因为它显然与名称不匹配,但它有效。其工作/被认可的方法签名要求是什么?

    \n
  • \n
\n

另一方面,这并不像开箱即用那么简单:

\n
<Label HorizontalOptions="End" TextColor="Red" Padding="0,0,10,0" Text="" \n       IsVisible="{Binding IsSynchronized}">\n            <Label.GestureRecognizers>\n                 <TapGestureRecognizer \n                       Command="{Binding Source={x:Type viewmodel:MainPageViewModel},\n                                            Path=DeleteActivityCommand}" />\n            </Label.GestureRecognizers>\n </Label>\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  • 在这种情况下,添加Command="{Binding DeleteActivityCommand}不起作用,因为<DataTemplate x:DataType="model:ActivityEntity"> …

xaml binding mvvm maui .net-maui

1
推荐指数
1
解决办法
2404
查看次数

SvelteKit 中的 Google API 自动完成

我正在构建一个应用程序,我需要从 API 获取返回值并将其绑定到我的变量。我已经被这个问题困扰了好几天了,无法继续下去。

这是我的代码:

<script>
  let address = "";
async function addExample() {
        const response = await fetch(
            "https://api",
            {
                method: "PUT",
                headers: {
                    "api-key":
                        "api-key",
                },
                body: JSON.stringify({
                    address: address,           
                }),
            }
        );
    }
</script>


<svelte:head>
    <script
        src="https://maps.googleapis.com/maps/api/js?key=my-key&libraries=places&callback=initAutocomplete"
        async
        defer
    >
    </script>

    <script>
        let autocomplete;
        function initAutocomplete() {
            const input = document.getElementById("autocomplete");
            const options = {
                componentRestrictions: { country: "au" },
                strictBounds: false,
            };
            const autocomplete = new google.maps.places.Autocomplete(
                input,
                options
            );
        }

        autocomplete.addListener("place_changed", onPlaceChanged);

        function onPlaceChanged() {
            address …
Run Code Online (Sandbox Code Playgroud)

html binding google-api sveltekit

1
推荐指数
1
解决办法
801
查看次数

尝试将 .environment 与 Binding 结合使用时出现问题

在尝试在 SwiftUI 中实现从环境值获取绑定时,我遇到了困难。

我有一个小的 GlobalAlert 类,我创建一个 ObservableObject 并发布一个 Binding<Bool> ,旨在触发显示的警报。

然后,我为 Binding<Bool> 制作一些自定义的 EnvironmentKey 并扩展 EnvironmentValues 来保存它。

在我的应用程序中,我实例化一个 GlobalAlert 并将其设为 ObservedObject,并使用 .environment 修饰符将其注入到视图中。

在我的视图中,我选择了作为 Binding<Bool> 创建的环境值

视图中的按钮调用我在应用程序中创建的静态 GlobalAlert 上的方法(发布),该方法设置用于显示警报的状态 (isAlert)。

不显示警报。

在面包屑之后,我注意到我的发布方法确实设置了 isAlert 状态,但是当 .alert 开始测试它时,它已经被重置......至少我认为这就是正在发生的事情。我猜测 GlobalAlert 正在以某种方式重新实例化,但我不确定这将是什么,因为它是我的应用程序中的静态变量。

强制 Setter 将状态值设置为 true 会导致出现警报,这样我就知道我的管道正在工作。

这是代码...

import SwiftUI

enum alertTypes {
    case information
    case error
}

class GlobalAlert: ObservableObject{
    @Published var isAlert: Binding<Bool> = .constant(false)
    var alert: String = ""
    
    func publish(alert: String, type: alertTypes){
        print("gGlobalAlert publish")
        self.alert = alert …
Run Code Online (Sandbox Code Playgroud)

binding environment-variables swiftui

1
推荐指数
1
解决办法
1152
查看次数