小编Eld*_*asp的帖子

重写内部方法(反射、发射)

我想创建以下类:

    public class MultiDataOrTrigger : DataTrigger
    {
        public MultiDataOrTrigger()
        {

        }

        // evaluate the current state of the trigger
        internal override bool GetCurrentState(DependencyObject container, UncommonField<HybridDictionary[]> dataField)
        {
            bool retVal = false;

            for (int i = 0; !retVal && i < TriggerConditions.Length; i++)
            {
                retVal = TriggerConditions[i].ConvertAndMatch(StyleHelper.GetDataTriggerValue(dataField, container, TriggerConditions[i].Binding));
            }

            return retVal;
        }
    }
Run Code Online (Sandbox Code Playgroud)

如何调用内部方法,创建内部类型的实例 - 我或多或少弄清楚了。为此,使用反射对我来说就足够了。

但我仍然无法通过重写另一个程序集中指定的虚拟内部方法来弄清楚自己。

更新

回应评论:

我知道这个问题可以在没有这样的课程的情况下解决 - 我知道还有许多其他解决方案或解决方法。我自己在实践中使用了其中的许多内容。由于我不知道如何解决这个问题,我现在还没有停止任何开发。

c# reflection wpf reflection.emit internals

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

标签 统计

c# ×1

internals ×1

reflection ×1

reflection.emit ×1

wpf ×1