Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I want to make an Windows Desktop Application for Windows 7 and above.
Can someone tell me how can I start? I have tried searching on Google for developing apps for Windows; all I’ve found so far is UWP (Universal Windows Platform) which I believe works for Windows 10 and above. I have even checked the Microsoft docs and all they are telling is about Windows 10 apps, not a word about versions below it.
Can someone tell me if I make an app for Windows 10 will it work with earlier versions too? As the main requirement is developing for Windows 7.
I have been doing coding for 3-4 years so I know coding. I just want to start from right path. Please guide me.
Jason is right to a point, UWP is the modern way, but I would actually recommend WPF which was designed to replace Windows Forms.
It uses modern techniques and methods with C# like Caml for the UI layout, MVVM, View Model bindings etc, and it's all transferable skills into UWP and Xamarin mobile apps. As an aside Xamarin Forms are looking to build out WPF apps in future releases for true cross platform apps so it's a good framework to learn for Windows desktop.
Start here - https://learn.microsoft.com/en-us/dotnet/framework/wpf/getting-started/walkthrough-my-first-wpf-desktop-application
You are right that UWP is for Windows 10 and above, so I would stay away from that in your case.
What you should start with is a simple basic Windows Form development in C#.
Download and install Visual Studio 2017 Community Edition from here: https://www.visualstudio.com/downloads/
Then I suggest looking for tutorials online for Windows Form apps in C# which can guide you through it.
Here are a couple that could help.
http://www.guru99.com/c-windows-forms-application.html
https://www.youtube.com/watch?v=yGHzNunW8M8
There are more but they are for older VS Studio versions, but the principals are the same even if the UI is a bit different.
The DotNet Framework takes away a bit the dependency upon a specific windows version. As longer as your windows version can run the DotNet Framework version you are targetting (compiling for) then it will work in most cases.
Best to first find out which DotNet framework version is installed on your target PC and then build for that, or upgrade it.
It might look a bit different on different windows version, so if you are compiling on a different platform to what you are running on then it is best to make sure that you do testing on your target platform.
This shows how to change your target DotNet version in Visual Studio: https://www.youtube.com/watch?v=E36kiGWfGCQ
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I have previously asked about which version of the SDK do I need and was told that I only need the latest and the rest are included in it.
But looking through the Android SDK manager I see there are many other types of packages. So can someone please explain what is going on there?
More specifically:
Do I need system images if I don't use an emulator? (I tried it in
the past and it was too slow.)
Do I need the "android sdk build tools" for any but the latest
version? And how about the "android sdk tools" (only 25.2.5)? is that just a different name for the same thing? And what about "android sdk
platform tools" (only 27.0.1) - Same thing?
Do I need only the really latest "sdk platform" and not even the latest major version plus the latest minor version? e.g. Is 8.1.0 enough, or do I need 8.0.0 as well and the 8.1.0 is only an addition to the 8.0.0?
Any warning of pitfalls when uninstalling packages welcome. ("Oh. If you uninstall an already installed package, Xamarin will croak. Wasn't that obvious?!"...)
EDIT (in response to request below)
No you do not. However Android Emulator is really fast now-a-days given their 2.0 update, HAXM updates, and Quick Boot feature.
No, you only need the build-tools and platform-tools version relating to your major compileSdkVersion / $(TargetFrameworkVersion). i.e. If compiling against API 27 you need build-tools and platform-tools v27 or greater. A general rule of thumb is to keep all Android SDK tooling to the latest. If you cannot use latest, then ensure they are all on the same major version (i.e. v27).
Yes, you only need the latest SDK Platform that you will compile against.
Android APIs are additive in the sense that if you install Android 8.1, you will have APIs for every level up to 8.1.
You can install system-images of other SDK Platforms for testing purposes as you do not need to install the API level to deploy to them.
1) If you do not use an emulator you do not need any system image.
2) Yes and no. If you go with Android Studios Android SDK Manager instead of Visual Studios implementation than you are mostly good to go with the latest one. There might be circumstances that require an older version but that are rare situations. One that comes to my mind: Using the Xamarin Android Visual Designer instead of source view or the one from Android Studio.
3) It depends on the amount of devices you want to support. With the SDK-platform you define which set of apis you want to use. It also defines how many of the android marketshare you will reach. If you go with the latest chances are very high that you will only reach 1 or 2 percent of the market. See Android Dashboard
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I am .Net Developer who started using Mac OS. The only thing that I miss on this system is "VISUAL STUDIO".
I don't wanna use two systems, What do you think in order to develop .Net application
Do you think that I should install Virtual box and use Visual Studio
http://zeus.cs.pacificu.edu/chadd/InstallVisualStudioOnYourMac.html
Or Just use Mono Develop? Is Mono Powerful enough to develop application that is compatible with Windows and run on Mac ?
I am purely .NET developer, but lately also developing iOS applications with using Xamarin (new name for mono libraries) and Xamarin studio (rebranded Monodevelop).
So, if I understand you correctly and you still want to develop .NET applications but just working and "live" in MacOS, the I would say that you have no chances.
Even if consider, that you can have an ability to write code (and even to have some .NET libraries to use even there) in Monodevelop, that's just incomparable, how VisualStudio is amazingly convenient for developer (especially, for native .NET one) and how many plugins it has.
So, from my point of view, there is even no talk: you must use VisualStudio in any case! Even if you use it in Remote Desktop.
UPD: Time flows and things change. Currently .NET is really spread even to Mac. Visual Studio Code been released for coding and Xamarin became available for Free since the answer was asked.
However, one thing will probably never come true: I am doubting Visual Studio will ever be able to migrate from Windows. It will be rather some new product or extending of Visual Studio Code.
Of course you can use Mono to develop an application that is compatible with Windows, although Mono is nowhere near as robust/easy to use/ feature filled as VS.
That said depending on the type of application you plan to develop, it may make sense to install windows in a virtual box so that your application can actually run on your computer.
For example, if you are trying to make a Windows Forms application, your app ( which can be completely developed in Mono, but will not run on the native OS X. This will most likely make debugging a nightmare.
If you're on the fence it might make sense for you to download a 90 day free trial of a windows OS from microsoft, run that in a virtual box and try out visual studio.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 1 year ago.
The community reviewed whether to reopen this question 1 year ago and left it closed:
Original close reason(s) were not resolved
Improve this question
I'd like to know if there are effective and open source tools to develop C# applications on Linux (Ubuntu). In particular, I have to develop Windows Forms applications.
I know about the Mono project, but I've never used it. What are the best tools (IDE, compiler, etc.) to set up a .NET developing environment on Ubuntu?
Is software developed on Linux runnable on Windows? Are there different behaviors or incompatibilities?
MonoDevelop, the IDE associated with Mono Project should be enough for C# development on Linux. Now I don't know any good profilers and other tools for C# development on Linux. But then again mind you, that C# is a language more native to windows. You are better developing C# apps for windows than for linux.
EDIT: When you download MonoDevelop from the Ubuntu Software Center, it will contain pretty much everything you need to get started right away (Compiler, Runtime Environment, IDE). If you would like more information, see the following links:
http://monodevelop.com/
http://en.wikipedia.org/wiki/MonoDevelop
http://en.wikipedia.org/wiki/Mono_%28software%29
http://www.mono-project.com/Development_Environments
Now Microsoft is migrating to open-source - see CoreFX (GitHub).
This is an old question but it has a high view count, so I think some new information should be added: In the mean time a lot has changed, and you can now also use Microsoft's own .NET Core on linux. It's also available in ARM builds, 32 and 64 bit.
Mono Develop is what you want, if you have used visual studio you should find it simple enough to get started.
If I recall correctly you should be able to install with sudo apt-get install monodevelop
I would suggest using MonoDevelop.
It is pretty much explicitly designed for use with Mono, and all set up to develop in C#.
The simplest way to install it on Ubuntu would be to install the monodevelop package in Ubuntu. (link on Mono on ubuntu.com) (However, if you want to install a more recent version, I am not sure which PPA would be appropriate)
However, I would not recommend developing with the WinForms toolkit - I do not expect it to have the same behavior in Windows and Mono (the implementations are pretty different). For an overview of the UI toolkits that work with Mono, you can go to the information page on Mono-project.
Mono is a runtime environment that can run .NET applications and that works on both Windows and Linux. It includes a C# compiler.
As an IDE, you could use MonoDevelop, and I suppose there's something available for Eclipse, too.
Note that WinForms support on Mono is there, but somewhat lacking. Generally, Mono developers seem to prefer different GUI toolkits such as Gtk#.
You can also install it using conda (tested on Ubuntu):
conda create --name csharp
conda activate csharp
conda install -c conda-forge mono
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
Is it possible to design a metro styled winform in visual studio 10 or visual studio 11 on windows 7? If so, where can I find info on how to do it? I have already found some links, like
http://msdn.microsoft.com/en-us/library/windows/apps/br211380
But I don't get the Windows Metro style.
Can anyone help me with this?
Or just using my framework :)
https://github.com/peters/winforms-modernui
Updated fork: https://github.com/dennismagno/metroframework-modern-ui
You should take a look at https://github.com/viperneo/winforms-modernui it provides Metro style for WinForms applications. It works with NET Framework 2.0 and above.
The strict Metro UI apps are Windows 8 only, and they require WinRT.
But if you want to simulate the Metro style in Windows 7 and Windows Forms, you can use third party controls (or develop your own), such as the Telerik ones,
http://www.telerik.com/products/winforms.aspx
Try WPF development using Elysium library on codeplex - http://elysium.codeplex.com/.
You can find the installation guide and sample implementation code here
http://bizvise.com/2012/09/27/how-to-create-metro-style-window-on-wpf-using-elysium/
There is another third party library to create Metro Styles applications in Windows 7 using Windows Forms. Check Devcomponents.
Windows Metro style apps do not currently work on Windows 7.
I have also heard that it is unlikely there will ever be a version of Metro for Win 7 - I think their operation goes too far to the heart of Windows for that to be practical.
So you'll have to bite the bullet and get the Win 8 preview I'm afraid.
You can make Metro styled apps with Visual Studio 11 Beta for Windows 8, with the correct SDK. Reading the article you linked gave me this link to download everything you need.
Download that, follow the tutorial you've already got.
Update:
As #bobsmith833 mentions, Metro and WinForms are different frameworks entirely. There's no way to use the two together. You'll have to go for Windows 8 and the Metro framwork if you want to make these apps.
If you are after the metro design, not the actual metro framework, devexpress has the components you need.
Easily. If you use Windows Forms, go to Solution Explorer and right-click the solution. Select from the menu the NuGet controler or sth like that. The program will load widgets, from which you can choose one depending on your needs and install it. For a Metro design, I use Metro UI. Just write the key words in the search panel. After installation, add the controls to the toolbox. For more info, search Foxlearn's video. ;-)
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
I have got C# .Net based applications. Is there any way I can run these applications for Apple IOS. I don’t have resources to develop all applications from scratch.
Many Thanks,
Ni
First of all, you can not just run your existing .NET programs unmodified on the iOS platform.
The .NET runtime does not work on iOS, nor will it (in relation to current app guidelines regarding runtime compilation). Mono has the same fate and will not run on the iOS platform.
Your only option is to get the code compiled to native iOS executables, and this will involve 3rd party tools.
One of those is the MonoTouch product. It is not free.
Note that this is not a technical limitation. The .NET runtime could run on the iOS platform if Microsoft, or Mono made it for that platform, but Apple does not allow such runtimes (the ones that download/execute not-yet-100%-compiled code) on their platform at all.
This is the same problem that prevents Flash from executing on the platform. The way Flash has gone to solve this is to compile the Flash programs to native iOS executables.
You can use the tools made by the mono project.
These will not support all of the MS namespaces (non of the windows specific ones, such as WMI) and your application code needs to be written to be cross platform (so using Path.Combine for directory paths instead of concatenations).
Try the MoMA tools to see if your code is cross platform and get recommendations for fixing it if it is not.
Take a look at Xamarin for IOS. Integrates nicely with Visual Studio otherwise you can use its own IDE.
You can also reference .net assemblies. Hope this helps.