Какой тип проекта C# вы бы использовали для переработки элемента управления ActiveX MFC C++?

StackOverflow https://stackoverflow.com/questions/55451

Вопрос

Глядя на шаблоны проектов C# в VS2008, можно отметить следующие предложения: Библиотека пользовательских элементов управления WPF, Библиотека пользовательских элементов управления WPF и Библиотека элементов управления Windows Forms.Какой из них вы бы использовали, если бы хотели перенести устаревший активный элемент управления, написанный на C++, в мир C# и .NET?

Это было полезно?

Решение

Похоже, вы пытаетесь сделать несколько разных вещей одновременно:

  1. Перенесите свой код в новую версию Visual Studio.
  2. Перенесите использование вашей технологии на более новую технологию (ActiveX на .net)
  3. Перенесите свой язык (С++ на С#).

Если у вас небольшая кодовая база, вам, вероятно, стоит начать с нуля и при необходимости перенести функциональность в новую кодовую базу.

Для более крупной базы кода вам необходимо понимать, что это дорогостоящая задача как с точки зрения усилий, так и с точки зрения количества дефектов.

Заказ может быть:

  1. Импортируйте свой код в новую версию Visual Studio.Получите его компиляцию.Просмотрите настройки проекта для каждого проекта.
  2. Выполните рефакторинг вашего кода, чтобы максимально изолировать код mfc и activex.Следуйте хорошим практикам рефакторинга, особенно если перед началом работы у вас не так много модульных тестов.
  3. Рассмотрите возможность замены слоя ActiveX на .net.
  4. Рассмотрим, какой набор инструментов GUI лучше всего подойдет для замены MFC.
  5. Язык – сначала рассмотрите возможность перехода на управляемый C++.
  6. Рассмотрите возможность перехода с управляемого C++ на C#.

Самое главное уметь оправдать все вышеперечисленное!

Другие советы

Не существует шаблона проекта, который сделает это за вас.Вы также можете прочитать и начать с пользовательского элемента управления.

Вам нужно будет рассмотреть целевое приложение, в котором будет размещаться элемент управления.Если это бизнес-приложение, у меня есть слышал что WPF не предлагает больших преимуществ перед Forms.В соответствии с этот Однако автор считает, что убийственный WPF — это бизнес-приложение, которое использует графические возможности, предоставляемые WPF, для визуализации данных.

В конце концов, я думаю, это анализ затрат и выгод.Выберете ли вы путь WPF и оплатите стоимость обучения ради будущих преимуществ графической визуализации данных, или вы придерживаетесь проверенного и надежного метода и рискуете разработать устаревшее приложение.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top