Beispiel #1
0
    /// <summary>
    /// Initializes a new instance of the <see cref="ControllerTypeFinder{TElement}"/> class
    /// with the specified finder to find a data context in the view.
    /// </summary>
    /// <param name="elementKeyFinder">The finder to find a key of the view.</param>
    /// <param name="dataContextFinder">The finder to find a data context in the view.</param>
    protected ControllerTypeFinder(IElementKeyFinder <TElement> elementKeyFinder, IDataContextFinder <TElement> dataContextFinder)
    {
        KeyFilter = (key, element) =>
        {
            if (key is null)
            {
                return(true);
            }

            var elementKey = elementKeyFinder.FindKey(element);
            return(elementKey is null?IsKeyDataContextType(key, dataContextFinder.Find(element)?.GetType()) : Equals(key, elementKey));
        };
    }
 public ControllerTypeFinderTss(IElementKeyFinder <TestElement> elementKeyFinder, IDataContextFinder <TestElement> dataContextFinder) : base(elementKeyFinder, dataContextFinder)
 {
 }
 public AvaloniaControllerTypeFinder(IElementKeyFinder <StyledElement> elementKeyFinder, IDataContextFinder <StyledElement> dataContextFinder) : base(elementKeyFinder, dataContextFinder)
 {
 }