I am trying to create a "conversation control" that can show a running list of entries, much like the IM application on many smartphones. To do this, I was thinking about using a WinGrid and then merging cells together to get the overlap look that is prevalent with other UIs that do this sort of thing.
I started by trying to merge cells and shown in this example (http://forums.infragistics.com/forums/p/34712/206196.aspx#206196), but was unsuccessful.
Does anyone know of a way to mimic the overlapping "text bubbles" look prevalent in many IM apps? Does Infragistics have a control that would be easily adaptable to this?
Hi,
I'm not sure I know exactly what you are trying to do. Different IM applications display in different ways. Can you post a screen shot of what you are trying to acheive?
Mike,
Thanks for your reply. I am trying to achieve a look like that shown in this attached image. I am trying to find a control that will allow for these "overlapping" bubbles to denote that the user has changed in a conversational stream. My first thought was to use an UltraGrid and use a different Row Layout for each row to allow for the overlapping (merged) cells. I tried the example with Row Layouts that you gave in the link in my prior post, but couldn't make that work. I was going to get the cell overlap to work and then use the RichText Editor example to put some nicely formatted cell contents together.
Can you think of a better way to accomplish this?
Thanks,
Keith
Hristo and Mike,
I have taken your samples and put them together in a control with a sample form in the attached project. The control allows you to add a message with a date, user, fore and back color, and alignment
This will work well for my project. There are a few minor details that I need to complete and if you have a quick idea, that would be great.
1. The cell padding isn't exactly correct. I added a newline in the format string, but that makes too much space after the text in each cell. I took it out and tried increasing the cell padding, but that didn't work as the text was still cut off. You can see in the attached sample that using the newline in the format string works pretty well, but there is still too much space on the smaller messages and too little space on the long messages.
2. I need to make the cells "non-selectable". Right now, the back of the row turns blue when clicking on a cell. I don't want that. I just want the grid to be in display mode only.
3. The first cell always has white text, I think because it is selected. I need to correct this.
4. It would be nice to have the cells support multiline, but I wonder if I'm going to have to parse my input strings and format them with <p>.
Thanks for all of your help!!!
I just put this control into my main project and can see that the cell padding issue is the main problem. Screen real estate is at a premium, and the extra white space is really problematic. Do either of you have another suggestion for getting the cell padded evenly all around? Neither the extra line in the format string, nor the CellPadding idea have been successful.
I just wanted to know if you were able to solve your issue based on our suggestions or you still need help? Just let me know.
Thank you.
Sorry for missing your reply! I was looking for an email on updates to the thread. I'll pay closer attention in the future.
I pulled your updated project and took a look. The "unselectable" cells looks great. However, there seems to be a problem in that the message is completely cut off when there is only one line in the message. For example, if you look at the first few messages, their text is gone. This seems to be made worse by tweeaking the CellPadding from 10 to lower numbers.
I was trying to tighten up the boxes around the text by making the CellPadding number lower, but the text gets cut off or is not shown at all.
If you can think of a quick fix for making the boxes tighter around the text, that would be great. If not, this is still much better! I appreciate your help.
Regards,
Hello ,
What you could do is to setting MinRowHeight in InitializeLayout event of the UltraGrid:
e.Layout.Override.MinRowHeight = 60;
I hope that this will helps you.
Using the min row height worked. I think that has the control in good shape. Thanks for all of your help!