小编Gui*_*OND的帖子

项目更改时通知ObservableCollection

我在这个链接上找到了

ObservableCollection没有注意到它中的Item何时发生变化(即使使用INotifyPropertyChanged)

一些通知Observablecollection项目已更改的技术.这个链接中的TrulyObservableCollection似乎正是我正在寻找的.

public class TrulyObservableCollection<T> : ObservableCollection<T>
where T : INotifyPropertyChanged
{
    public TrulyObservableCollection()
    : base()
    {
        CollectionChanged += new NotifyCollectionChangedEventHandler(TrulyObservableCollection_CollectionChanged);
    }

    void TrulyObservableCollection_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
    {
        if (e.NewItems != null)
        {
            foreach (Object item in e.NewItems)
            {
                (item as INotifyPropertyChanged).PropertyChanged += new PropertyChangedEventHandler(item_PropertyChanged);
            }
        }
        if (e.OldItems != null)
        {
            foreach (Object item in e.OldItems)
            {
                (item as INotifyPropertyChanged).PropertyChanged -= new PropertyChangedEventHandler(item_PropertyChanged);
            }
        }
    }

    void item_PropertyChanged(object sender, PropertyChangedEventArgs e)
    {
        NotifyCollectionChangedEventArgs a = new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Reset);
        OnCollectionChanged(a); …
Run Code Online (Sandbox Code Playgroud)

c# collections wpf observablecollection inotifypropertychanged

39
推荐指数
3
解决办法
12万
查看次数

WPF Listbox selectionchanged MVVM

我的WPF应用程序中有一个列表框.我知道如何使用selectionchanged事件.但是我试图遵循MVVM设计.但是我不知道该怎么做.

我已经为一个按钮做了这个,但不确定我是否可以做同样的事情?

<Button Grid.Column="0" Name="buttImport" 
    Content="Import File" 
    Command="{Binding CommandButtImport}" 
    Style="{StaticResource ButtonTemplate}"/>
Run Code Online (Sandbox Code Playgroud)

 

public class ViewModel : INotifyPropertyChanged 
{       
    // for the button that imports the orders file
    public ICommand CommandButtImport { get; set; }

    public ViewModel() 
    {
        CommandButtImport = new MyCommands(
            ExecuteCommandButtImport,
            CanExecuteCommandButtImport);
    }

    private bool CanExecuteCommandButtImport(object parameter)
    {
        return true;
    }

    // import button
    private void ExecuteCommandButtImport(object parameter)
    {
      // some code
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑请忽略上面的代码

我已经更改了我的代码,所以在我目前拥有的内容之下重新发布.我有一个奇怪的问题.XAML - 主代码包含我的数据网格的代码.App - XAML下面的块包含我的大多数应用程序的样式,但只是一个snipet.

代码行添加到我的数据网格下面的XAML - 主代码中用于测试目的.

<ListBox ItemsSource="{Binding SelectedItem.DuplicateSecurities, ElementName=dataGridOrders}" 
 SelectedItem="{Binding …
Run Code Online (Sandbox Code Playgroud)

c# wpf mvvm

22
推荐指数
3
解决办法
5万
查看次数

Pango 标记语言中的文本对齐

像这样写一个标记

<span font-desc="Bold 40" foreground="blue" size="x-large">P <b>S</b> </span>

在以下链接的帮助下,上述标记可以作为 Gstreamer 的文本属性 提供给 textoverlay 元素。我没有找到对齐文本的方法。例如,如果我想在中心、左侧或右侧添加文本。我怎样才能做到这一点。

html pango alignment gstreamer

6
推荐指数
0
解决办法
1867
查看次数

在Angular 7中如何从英语(LTR)加载阿拉伯语(RTL)的CSS

我正在 Angular 7 中开发一个应用程序,使用 ngx-translate 进行国际化和基于引导程序的 AdminLTE 3。我有两个 css:

  1. 一种基于 LTR 的语言
  2. 另一个用于基于 RTL 的语言。

当我选择了 RTL 方向的阿拉伯语时,如何加载 bootstrap_rtl.css 和卸载 bootstrap_ltr.css。

<div class="dropdown-menu dropdown-menu-sm dropdown-menu-right">
    <a class="dropdown-item" (click)="useLanguage('en')">
      English
    </a>
    <div class="dropdown-divider"></div>
    <a class="dropdown-item" (click)="useLanguage('ar')">
      Arabic
    </a>
    <div class="dropdown-divider"></div>
    <a class="dropdown-item" (click)="useLanguage('ta')">
      Russian
    </a>
</div>
Run Code Online (Sandbox Code Playgroud)

<div class="dropdown-menu dropdown-menu-sm dropdown-menu-right">
    <a class="dropdown-item" (click)="useLanguage('en')">
      English
    </a>
    <div class="dropdown-divider"></div>
    <a class="dropdown-item" (click)="useLanguage('ar')">
      Arabic
    </a>
    <div class="dropdown-divider"></div>
    <a class="dropdown-item" (click)="useLanguage('ta')">
      Russian
    </a>
</div>
Run Code Online (Sandbox Code Playgroud)

html javascript css typescript angular

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

在REST API分页资源中:当客户端请求超过最大页码数的页面时,您会返回什么?

假设我们只有30个产品和一个REST API,其中QueryString参数用于分页.下面的例子pagesize是每个资源的数量page.

api/products?page=1pagesize=10
Run Code Online (Sandbox Code Playgroud)

当请求在最大页面上请求页面时,您更喜欢回答什么?

api/products?page=125&pagesize=10
Run Code Online (Sandbox Code Playgroud)
  1. 400 - 错误请求?
  2. 404 - 未找到?
  3. 200 - 好的(空结果)?
  4. 204 - 没有内容?

rest pagination http-status-codes

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