Hi,
I'm trying to limit the number of fields the grid can be grouped by. I'm handling the Grouping event and cancelling the event if the number of groups exceed the limit. But I'd like to have some kind of mouse/drop indicator or tooltip to indicate the max number of fields is reached. I'm using the GroupByAreaMulti. Is there a way to display a tooltip and only display the tooltip based on some condition?
Thanks,
Harold
Hello Harold,After working on Tooltip for GroupByAreaMulti and doing some research, it has been determined to be a new product idea. You can suggest new product ideas for future versions (or vote for existing ones) at http://ideas.infragistics.com.
There are many benefits to submitting an product idea:- Direct communication with our product management team regarding your product idea.- Notifications whenever new information regarding your idea becomes available.- Ability to vote on your favorite product ideas to let us know which ones are the most important to you. You will have ten votes for this and can change which ideas you are voting for at any time.- Allow you to shape the future of our products by requesting new controls and products altogether.- You and other developers can discuss existing product ideas with members of our Product Management team.
Steps to create your idea: 1. Log into the Infragistics Product Idea site at http://ideas.infragistics.com (creating a new login if needed).2. Navigate to the product / platform channel of your choice (e.g. WPF, Windows Forms, ASP.NET, HTML5 / Ignite UI, iOS / NucliOS, etc.)3. Add your product idea and be sure to be specific and provide as much detail as possible. Explain the context in which a feature would be used, why it is needed, why it can’t be accomplished today, and who would benefit from it. You can even add screenshots to build a stronger case. Remember that for your suggestion to be successful, you need other members of the community to vote for it. Be convincing!4. Include a link to this thread in your idea so product management will be able to look back at this case. The Product Idea site puts you in the driver’s seat and allows you to track the progress of your ideas at any time, see how many votes it got, read comments from other developers in the community, and see if someone from the product team has additional questions for you.
Thank you for contacting Infragistics.
Hi Stefan,
Is there anyway to at least change the drop indicator so that the user knows the field cannot be dropped into the group by area?
Hello Harold,
In order to display an indication to the user that the XamDataGrid cannot be grouped by a certain field if the total Fields' count exceeds a specific number, I can suggest you create a MultiDataTrigger with conditions for the FieldLabelDragInProgress property of the GroupByAreaMulti and whenever it is True, we can use setters to set the Prompt2 and the Background properties of the element. The Fields' count check can be done with a Condition instance as well by using a converter in code-behind.
<MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding Path=FieldLabelDragInProgress, RelativeSource={RelativeSource Self}}" Value="True" /> <Condition Binding="{Binding RelativeSource={RelativeSource AncestorType=igDP:XamDataGrid}, Converter={StaticResource converter}}" Value="True" /> </MultiDataTrigger.Conditions> <Setter Property="Prompt2" Value="Fields count exceeded, cannot group!" /> <Setter Property="Background" Value="Red" /></MultiDataTrigger>
<Setter Property="Prompt2" Value="Fields count exceeded, cannot group!" /> <Setter Property="Background" Value="Red" /></MultiDataTrigger>
Please note that the Cursor of the XamDataGrid (not the one of the GroupByAreaMulti element) takes precedence when a field is being dragged and setting the Cursor of the GroupByAreaMulti will be pointless. You can always set the Cursor of the XamDataGrid in the converter, but this will require additional logic for reverting the Cursor when necessary.
I have attached a sample application that demonstrates the initial approach from above.
If you have any questions, please let me know.