- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用以下代码来避免使用 switch
语句来决定调用哪个方法,它只与我设置的 BindingFlags 标志一起工作,没有 InvokeMethod
。 InvokeMethod
的实际含义是什么,为什么在以下代码中不需要它:
public enum PublishMethods
{
Method1,
Method2,
Method3
}
private void Form1_Load(object sender, EventArgs e)
{
InvokePublishMethod(PublishMethods.Method2);
}
private void InvokePublishMethod(PublishMethods publishMethod)
{
var publishMethodsType = this.GetType();
var method = publishMethodsType.GetMethod("Publish" + publishMethod, BindingFlags.NonPublic | BindingFlags.Instance);
method.Invoke(this, null);
}
private void PublishMethod2()
{
MessageBox.Show("Method2!");
}
最佳答案
InvokeMethod
未被 GetMethod
使用,但在您将 BindingFlags
传递给 Type.InvokeMember
时使用它.
BindingFlags
是一种奇怪的枚举,它结合了三个独立的功能部分(根据 MSDN,“可访问性”、“绑定(bind)参数”和“操作”)。这三项功能在需要 BindingFlags
参数的任何地方都没有意义。
关于c# - BindingFlags.InvokeMethod 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3469419/
我有一个 java 对象的实例,假设有一个名为 myList 的 ArrayList 实例。 对于此特定实例,我想覆盖 invokeMethod 方法以(例如)记录调用该方法。 我可以做这样的事情:
我在项目中有基类A A继承了很多子类 public class A { public void Process(string myString1, int myInt1 )
我注意到 Groovy MetaClass 的一些奇怪行为,我想知道是否有人可以给我一些关于这里发生的事情的线索。 这工作正常: @Override Object invokeMethod(Strin
我想使用QMetaObject::invokeMethod来调用一个对象的方法(稍后它会在另一个线程中运行,然后invokeMethod就派上用场了)。我在 Python 3.3 上使用 PySide
我使用以下代码来避免使用 switch 语句来决定调用哪个方法,它只与我设置的 BindingFlags 标志一起工作,没有 InvokeMethod。 InvokeMethod 的实际含义是什么,为
我的类中有一个方法调用QMetaObject::invokeMethod。来自documentation我读到使用 Qt::DirectConnection 应该立即调用插槽。在我的代码中,我似乎体验
是否可以调用静态方法? 我正在使用: QMetaObject::invokeMethod(this ,strThread.toLatin1()
这是我要调用的方法的原型(prototype): const QString& FieldForm::getTitle(void) const; 我必须通过 Qt 函数调用此方法:invokeMeth
我正在尝试调试一段代码,该代码更新用于 Windows 服务的凭据,该服务未运行。它不会抛出异常,它只是没有通过检查以表明它已被应用。 MSDN对构造函数的描述如下: public Object In
我目前正在移植 FitNesse 的 Slim 服务器,但我现在有点卡住了。我得到的是像这样的字符串: ("id_4", "call", "id", "setNumerator", "20") ("i
我正在用 Qt 做一个项目,其中 invoke 方法在单独的线程上运行并从主线程调用。如果我将 QByteArray 作为 const 传递,它会构建并运行。但是,如果我删除它构建的 const 但在
这是 QMetaObject::invokeMethod doesn't find the method 的跟进.调用没有参数的方法是有效的。但是将前面的问题扩展到带参数的方法让我再次失败。 请参阅以
我正在开发一个小型 Flutter 应用程序,我在其中使用 native 库进行一些计算。 dart 和 java(在 android 上)之间的通信是双向的,为此使用 methodChannels。
我有一个父类(super class)Common,它继承自QObject。然后我得到了一个类Item,它继承自Common。 Common.h class Common : public QObje
我有以下代码: class A : public QObject { Q_OBJECT public: A() : QObject() { moveToThr
...从静态类和非主线程调用。 简而言之,我有一个类“sapp”,它有另一个静态类“tobj”作为静态成员。为了避免静态订单初始化失败,tobj 在 sapp 的方法中声明,该方法又返回 tobj 实
在 Groovy 中,invokeMethod 和 methodMissing 方法之间的主要区别是什么?是否有明确的指导原则,何时应该优先使用其中一个? 最佳答案 何时使用什么:始终使用 metho
除了QMetaObject::invokeMethod是否有任何类型安全的方式来异步调用方法/插槽(也就是在 GUI 线程中排队执行)? QMetaObject::invokeMethod没有对函数名
我想从下面给定的类调用groovy方法 package infa9 import java.io.BufferedReader; import java.io.IOException; import
我正在尝试找出 QMetaObject::invokeMethod 的用法。我有一个函数,它有一个参数(非 const QString),我希望它是输出,该函数没有返回值,对其调用 invokeMet
我是一名优秀的程序员,十分优秀!