Hi Blake,
I appreciate the time you're taking looking into it. I have it working right now on the front-end but I'd prefer to be it via code-behind since I use it in a few other places. For now, my solution was to create a UC that outputs just the number of unread messages, nothing else:
UnreadMessageCount.ascx
<CSMessage:ConversationList ID="ConversationList" runat="server">
<QueryOverrides runat="server" PageSize="1" ReadStatus="Unread" PagerID="UnreadPager" />
<ItemTemplate>
<CSControl:ControlData ID="ControlData1" runat="server" ControlId="UnreadPager" Property="TotalRecords" Text="{0}" />
</ItemTemplate>
<NoneTemplate>
0
</NoneTemplate>
</CSMessage:ConversationList>
<CSControl:Pager ID="UnreadPager" runat="server" Visible="false" />
So anywhere I need the #, I just call this control on the front-end. Do you see any performance issues with this? Should I OutputCache my control? I'm just afraid so many calls to this for a user will bog the system down. I have a panel at the top of my page that pops down with jQuery and shows your unread message count. It ends up appearing on most of the pages because its a collapsed panel that the user has the ability to flip on. Thanks again and if you find anything with code, please share!
Best,
Mark