I am new to Xamarin and I was wondering if it is possible in Xamarin Forms to create a menu similar to this:
.
It looks like you are trying to do a SlideOver menu which I would suggest using SlideOverKit
They support some nice menu options which you can adapt with and is easily implementable by using their nuget package.
Yes. It is possible. I recommend you have a look at Custom renderers. They enable you to do whatever the executing platform is capable of. Note that depending on what you need there may be plenty of platform knowledge that is needed.
I would suggest using SyncFusion component called DataGrid. SyncFusion has many great components for Xamarin forms. They also have a community license were you can get all components for free if you are qualified.
you can use this list in your custom master detail or menu component.
Related
I am building a Visual Studio extension (VSIX) with menu commands depending on the options for the extension. Its dynamic, what commands (how many) depends on the options.
I have a solution for it that uses the command-table, like: Dynamically add menu items
I would like to skip the command-table and build the menus totally programmatically, like: HOWTO: Package with commands created by code
The reason is to make it more dynamic. So if the user adds/changes/deletes in the options of the extension it would be handled dynamically (programmatically). On saving options the menu-command tree would be rebuildt. If I use a command-table I will have to add/delete nodes there to be able to solve it.
The thing I can not figure out is howto add the objects for "groups" and "menus" programmatically.
So I am out for the class/interface that has "AddGroup" or "AddMenu" as methods.
Is this at all possible or do I have to use the command-table? If it is possible I would appreciate links to code-examples for it.
Regards Hans
MVP Carlos Quintero has published sample code using IVsProfferCommmands3.AddNamedCommand that illustrates how to programmatically add menu items via the automation services (formerly utilized by the now discontinued add-in extensibility model).
https://github.com/visualstudioextensibility/VSX-Samples/tree/master/PackageCommandsCreatedByCode
While add-ins are no longer supported, the automation interfaces are still present. So you can use these, bearing in mind these menu items (aka commands) are temporary.
Also, the sample code here is a little outdated, using Package instead of AsyncPackage, and ProvideAutoLoad attributes. So you'll also want to read up on the following:
https://github.com/microsoft/VSSDK-Extensibility-Samples/tree/master/AsyncPackageMigration
https://devblogs.microsoft.com/visualstudio/updates-to-synchronous-autoload-of-extensions-in-visual-studio-2019/
Sincerely,
I would like to create a switch similar to this in xamarin forms. Anybody, please provide me with an idea.
This is called Segmented Control in Xamarin.Forms. To create this we need to add Plugin.SegmentedControl.Netstandard nuget packages. This looks same in android & iOS projects.
In your xaml file prefix this controll as control:SegmentedControl. For more information visit Segmented Control In Xamarin.Forms
.
Is there any way to add a custom button in the tabbar of Xamarin.Forms, like it's seeable on the mock below?
Thanks in advance.
Cue.
You can use relative layout to add the tabs in Xaml,
If you need any coding help let me know I'll help you to design this layout.
I came across this question while looking into implementing a very similar tab bar. There is one other option I've found to do this without writing those hefty custom renders yourself. Check out Sharpnado. It provides a variety of possible customizations for a Xamarin.Forms tab bar.
There is also a blog post on implementing a few options, complete with sample code you can clone.
I have a C++/winrt project with a complex and dynamic xaml interface created in C++ code. Now I am moving to the latest VS 15.9.0 Preview 3, which has platform support for C++/Winrt and also allows use of the xaml designer in such a project. But I don't want to use the designer and have turned it off in Tools/Options/Xaml. The result is that none of my programmatic xaml elements appears. The project seems to expect me to enter these elements in a xaml code page, rather than using C++, e.g. Grid(), StackPanel(), view.RowDefinitions.Append(), view.SetRow() etc. The GeneratedFiles folder is now full of items that were not present in the previous project, yet can't be removed. Is it still possible to use the C++ interface for xaml, and what must be done to enable it if so? Thanks.
Ryan is correct: C++/winrt does support programmatic creation of xaml, and it works great. With the help of a couple of c++/winrt guys at MS I think I also know why my code was not doing anything. In the former version of my app I had declared MainPage as a C++ class, not a struct, and had assigned the starting Grid for the xaml by getting the current Window and setting currentWindow.Content(theGrid). But in the new template app MainPage is a struct, which might matter, and while setting window.Content that way no longer works, this does: this->Content(theGrid). Leaving aside some irrelevant issues about declarations in the BlankApp, this I think is the answer. Programmatic xaml works if you set that initial content as above.
Unfortunately, this is not the intended way to use this UI system. XAML-based UI systems are descendants of WPF, which relies on the Model-View-ViewModel (MVVM) pattern.
This pattern intends three types of classes to make up your application: Views, which are primarily written in XAML, and only deal with displaying data they are given; ViewModels, which are the wrapper and translator to give the views data, and to give the models commands; and lastly, Models, which are your backend business-logic classes.
Your instinct to not trust the designer is reasonable - it generates messy and unidiomatic XAML code. But it is an excellent way to preview the way your XAML code looks.
To get back to your specific situation, there are real problems in the library's API that will be serious roadblocks to programmatically define a UI in C++. Instead, you will want to use XAML to declare the UI. Adding and removing grid column definitions is not something that is well-supported, but using StackPanels and DockPanels is the normal way to do this.
If you have more specific questions, feel free to open a new question here, but do bear in mind that you may want to search first under the tags mvvm and wpf in addition to xaml, c++-winrt, and winrt.
If you have more questions that are rather broad and may be too broad for the main site here, feel free to join the WPF channel on chat, but bear in mind that most of us don't have experience in WinRT specifically.
in ASP we have so many ways to change theme .
but is there any way for chanigngthe whole theme of a windows application/?
By default a winform app will inherit windows theme but you can explicitly change some ui properties like color,font etc.
You can also consider moving to WPF for better and easy to implement UI.
Nope, at least not easily.
But you could give WPF a try, you will need to upgrade to C# 3.0 for that.
Some 3rd party component sets support theming.
Example : Developer express