MFC能否调用 c#封装的自定义用户控件?

Magical茏 2017-03-15 05:19:53
用c#写了一个界面控件,想在mfc里使用,到底行不行?
...全文
181 点赞 收藏 5
写回复
5 条回复
Magical茏 2017年03月16日
顺便问一下qt能否实现使用c#的自定义控件呢?
回复 点赞
shenyi0106 2017年03月16日
COM的可以,CLI的就别想了
回复 点赞
Dobzhansky 2017年03月16日
只要是支持用 HWND 操作都行
回复 点赞
Dobzhansky 2017年03月15日
可以的, 在对话框内创建 .net 控件作为子窗口
[code=c++]
BOOL
ManagedDialog::OnInitDialog()
{
DebugLog(_T("ManagedDialog::OnInitDialog in "));
arxDialog::OnInitDialog();
HRESULT hr = S_OK;
IARXCLRPlugin* pCLRPlugin;
hr = arxApp::getApp()->GetCLRPlugin((PVOID*)&pCLRPlugin);
if (SUCCEEDED(hr)) {
bstr_t bstrTypeName(L"Plugin.DialogControl, ARXCLR, Version=1.0.0.0, Culture=neutral, PublicKeyToken=37063678cf155b6b");
pCLRPlugin->CreateManagedControl(m_hWnd, bstrTypeName, &m_hChildWnd);
if (m_hChildWnd) {
RECT rc;
GetClientRect(&rc);
::SetParent(m_hChildWnd, m_hWnd);
::MoveWindow(m_hChildWnd, rc.left, rc.top, rc.right-rc.left,rc.bottom-rc.top,FALSE);
::UpdateWindow(m_hChildWnd);
::SetWindowTextW(m_hWnd, bstrTypeName.GetBSTR());
}
SafeRelease(&pCLRPlugin);

[/code]
回复 点赞
幻夢之葉 2017年03月15日
应该是可以做到的,参考VC++.Net
回复 点赞
发动态
发帖子
VC/MFC
创建于2007-09-28

7896

社区成员

42.1w+

社区内容

VC/MFC相关问题讨论
社区公告
暂无公告