Есть проект, не слишком большой, .NET c гуём на WinForms.
Версия .NET, по большому счёту, всё равно какая. Проект собирается с .NET 2.0 и не жужжит. Никаких фич от старших фреймворков не использует.
Имеющийся гуй не слишком сложный, combobox, listview, кнопки, да и всё. Никаких custom controls нет. Могу очень дёшево выкинуть имеющийся гуй и нарисовать такой же с применением любой другой технологии.
Хочется кроссплатформенный Windows-Linux гуй, не переписывая логику и не уходя от .NET.
Как бы к этому вопросу подойти?
Re: А что сейчас с кросплатформенным гуём, Win+Linux?
Здравствуйте, Sharowarsheg, Вы писали:
S>Имеющийся гуй не слишком сложный, combobox, listview, кнопки, да и всё. Никаких custom controls нет. Могу очень дёшево выкинуть имеющийся гуй и нарисовать такой же с применением любой другой технологии. S>Хочется кроссплатформенный Windows-Linux гуй, не переписывая логику и не уходя от .NET. S>Как бы к этому вопросу подойти?
Вообще WinForms в Mono должны более-менее "просто работать". Не вариант?
Re[2]: А что сейчас с кросплатформенным гуём, Win+Linux?
Здравствуйте, Sharowarsheg, Вы писали:
S>Хочется кроссплатформенный Windows-Linux гуй, не переписывая логику и не уходя от .NET. S>Как бы к этому вопросу подойти?
Эффективно только уйти с .NET и использовать C++. В GNU/Linux до какой-то степени можно использовать Wine. Mono мне думается лучше даже не рассматривать. Итого, ответ Wine, в противном случае смена языка и платформы.
Re[2]: А что сейчас с кросплатформенным гуём, Win+Linux?
Здравствуйте, velkin, Вы писали:
V>Эффективно только уйти с .NET и использовать C++. В GNU/Linux до какой-то степени можно использовать Wine. Mono мне думается лучше даже не рассматривать. Итого, ответ Wine, в противном случае смена языка и платформы.
А что не так с Mono? Смены языка и платформы не хочется.
Re[3]: А что сейчас с кросплатформенным гуём, Win+Linux?
Здравствуйте, Sharowarsheg, Вы писали:
S>А что не так с Mono? Смены языка и платформы не хочется.
Это нужно пробовать самому, тогда будет понятнее. Наверное это можно назвать моносовместимостью, то есть надо будет тестировать и переделывать приложение специально под Mono и не факт, что будет адекватно работать. В каком-то смысле проще тогда уж сразу уходить под кроссплатформенные фреймворки, вроде Qt и другие. В Wine будет гораздо меньше проблем, но нужно кое-что устанавливать, включая .NET. Здесь дело в соотношении усилие-результат, то есть стоит ли овчинка выделки. На мой взгляд для кроссплатформы не стоит, проще уж сразу переучиваться или запускать в GNU/Linux .NET-приложения как есть через Wine.
Re[4]: А что сейчас с кросплатформенным гуём, Win+Linux?
Здравствуйте, Sharowarsheg, Вы писали:
S>Хочется кроссплатформенный Windows-Linux гуй, не переписывая логику и не уходя от .NET.
S>Как бы к этому вопросу подойти? То, что стоит посмотреть
Re: А что сейчас с кросплатформенным гуём, Win+Linux?
S>Хочется кроссплатформенный Windows-Linux гуй, не переписывая логику и не уходя от .NET.
Самое время попробовать NET Core.
А гуй — на чем-нить типа gtk,
Или просто переделать на веб-морду — не вариант?
Дотнетовского гуя просто не знаю под линух.
С++ных — вагон и маленькая телега.
Мож NET Core (бизнес-логика) + гуй на С++?
А моно — не вариант. У меня пацан восхищался, что при переносе 85% сразу работает.
Но оставшиеся 15% — это легче переписать с нуля...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>А моно — не вариант. У меня пацан восхищался, что при переносе 85% сразу работает. LVV>Но оставшиеся 15% — это легче переписать с нуля...
Несколько лет назад «переводил» net-проект на моно для мака, да, процентов 85 гуя заработало. А дальше — то контекстное меню отваливается, то таблички криво работают, то с юникодом проблемы на буквах типа й. Пришлось делать кастомную сборку моно с фиксами.
Но с тех пор лет пять прошло, если гуй действительно простой — может и взлетит.
Re[3]: А что сейчас с кросплатформенным гуём, Win+Linux?
S>Имеющийся гуй не слишком сложный, combobox, listview, кнопки, да и всё. Никаких custom controls нет. Могу очень дёшево выкинуть имеющийся гуй и нарисовать такой же с применением любой другой технологии.
S>Хочется кроссплатформенный Windows-Linux гуй, не переписывая логику и не уходя от .NET.
Если только combobox, listview, кнопки — под Mono (WinForms) нормально должно работать. У меня была проблема c TreeView под Mono/Linux, помог TreeViewAdv. Если у тебя в проекте P/Invoke не используются, тогда проблем не должно возникнуть.
Здравствуйте, Sharowarsheg, Вы писали:
S>Хочется кроссплатформенный Windows-Linux гуй, не переписывая логику и не уходя от .NET.
Electron + https://github.com/ElectronNET/Electron.NET
Sapienti sat!
Re[2]: А что сейчас с кросплатформенным гуём, Win+Linux?
Здравствуйте, sqrt, Вы писали:
S>Если только combobox, listview, кнопки — под Mono (WinForms) нормально должно работать. У меня была проблема c TreeView под Mono/Linux, помог TreeViewAdv. Если у тебя в проекте P/Invoke не используются, тогда проблем не должно возникнуть.
Пока всё именно так и произошло. Всё работает, кроме p/invoke — у меня есть часть математики на C. Осталось разобраться, как собрать DLL для Linux, и золотой ключик у меня в кармане.
Re[3]: А что сейчас с кросплатформенным гуём, Win+Linux?
Здравствуйте, Sharowarsheg, Вы писали:
S>Пока всё именно так и произошло. Всё работает, кроме p/invoke — у меня есть часть математики на C. Осталось разобраться, как собрать DLL для Linux, и золотой ключик у меня в кармане.
Нужно собирать .so — гуглится через "gcc make shared library" и в методах прописывается [DllImport("ИМЯ.so")]. Для mono работает отлично, но будет подводный камень с двоичной переносимостью этой библиотеки. В идеале в каком дистрибутиве собирается — в том и работает.