cdi*_*run 3 c# api implementation interface
这是我的代码,VS2012 C#Express抱怨PISDK._DEventPipeEvents接口中两个成员的非实现,这里很快粘贴:
namespace PISDK
{
[Guid("9E679FD2-DE8C-11D3-853F-00C04F45D1DA")]
[InterfaceType(2)]
[TypeLibType(4096)]
public interface _DEventPipeEvents
{
[DispId(2)]
void OnNewValue();
[DispId(1)]
void OnOverflow(object vtEvent, OverflowCauseConstants Cause);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
class PointListEventPipeEventReceiver : PISDK._DEventPipeEvents
{
private PISDK.EventPipe eventPipe;
public PointListEventPipeEventReceiver(PISDK.EventPipe eventPipe)
{
this.eventPipe = eventPipe;
}
public void PISDK._DEventPipeEvents.OnNewValue()
{
Console.WriteLine("New value event");
handleNewValue(eventPipe);
}
public void PISDK._DEventPipeEvents.OnOverFlow(object vtEvent, PISDK.OverflowCauseConstants Cause)
{
throw new NotImplementedException();
}
private void handleNewValue(PISDK.EventPipe eventPipe)
{
Console.WriteLine("Handling new value");
Array eventObjs = eventPipe.TakeAll();
Console.WriteLine("eventObjs.Length==" + eventObjs.Length);
foreach (PISDK.PIEventObject piEventObj in eventObjs)
{
Console.WriteLine(piEventObj.EventData as PISDK.PointValue);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我在这里不知所措,任何帮助都很好.
您的实现在界面中使用OnOverFlow大写F而不是小写.应该调用该方法OnOverflow.
| 归档时间: |
|
| 查看次数: |
21638 次 |
| 最近记录: |