Yet another coding blog covering everything from C#, WPF, SQL, and Silverlight to any other random thought that passes my way…
RSS icon Home icon
  • Seesmic Desktop 2 Plugin Video Preview plugin updated to 2.2.2.0 addressing short URL support

    Posted on December 19th, 2011 biggert 1 comment

    In previous releases, we had short URL support. A couple versions ago, instead of specifically supporting each short URL service, I implemented an “unshortening” service named unshort.me which covered the conversion of all short URL services to the proper long URLs. Well, that was my mistake of depending on a third party to be reliable because a month or so ago, the author made changes which affect the plugin and, possibly as early as December 2011, that service will go out of business entirely. So… I hunkered down and wrote the C# code myself to do the unshortening of the URLs in the plugin so this will never be an issue again. From now on, I’ll just suck it up and do it myself than relying on a third party… sorry about that!

    On a side note, in a recent Seesmic Desktop update, the application not only caused my plugin not to work, but the entire application crashes altogether. I’ve made the appropriate changes to my plugin to prevent this from happening but just to comment on it… it was a change they made, not me that caused this and I’m still discussing with them what could have caused it. So if that happens, you need to download the new XAP file here and manually put it in your Documents\Seesmic\Plugins folder.

  • Seesmic Video Preview plugin updated to 1.0.0.2

    Posted on July 12th, 2010 biggert 1 comment

    Just a quick update, I updated the Video Preview plugin to version 1.0.0.2. It was leaving out the underline “_” character when they were used in a YouTube URL which was causing them not to show. Of course, this is the second time I’ve had to fix this issue :) I promise I got em both now….

  • Videos not showing in the dialog in the Seesmic Desktop Video Preview plugin

    Posted on June 28th, 2010 biggert No comments

    Just a quick mention about a problem a few people have had when attempting to view the videos in my Seesmic Desktop Video Preview plugin. The users will click the video and the dialog will open to an empty box. This happens when you don’t have Adobe Flash player installed for IE. The dialog box that shows the video uses a Silverlight WebBrowser component which is actually just a IE-wrapper… so if you don’t have Flash installed for IE or you have it disabled in IE, the videos in Seesmic won’t show…. so just fix your IE and you’ll fix your Seesmic :)

    Go here to download the Seesmic Desktop Video Preview plugin.

  • New Project – Seesmic Plugin Video Preview (view Youtube and Twitvid videos in Seesmic)

    Posted on June 20th, 2010 biggert 5 comments

    So I just completed my second plugin for Seesmic Desktop. The Video Preview plugin allows the user to view Youtube and Twitvid videos where links are posted without leaving Seesmic. Now, there’s a preview thumbnail of the video shown at the bottom of the post in the timeline and, which the user clicks it, a dialog will be show allowing the user to view the video. You can read more details here about the plugin or just dive in and download it here.

    Let me know if y’all have any problems with it!

  • A few good custom WPF controls found along the way

    Posted on January 24th, 2010 biggert 3 comments

    So in my work with WPF, I’ve needed either controls to supplement what was missing from Winforms or simply to match up with the current user experience’s of today’s application. I take no credit in actually developing these controls, just finding them on the web via Google. FYI – this article was written on .NET 3.5 as I know some of these will be included with .NET 4.0 WPF.

    Linklabel:
    http://www.blagoev.com/Blog/post/Building-a-WPF-LinkLabel-control.aspx

    NOTE: I highly recommend properly binding the IsEnabled property in the Style. If you don’t, having the IsEnabled property set to false on initial load and then changing it later will not properly enable the control.
    To be more specific, add the highlighted line in the Template setter:

    <Hyperlink
    x:Name=”PART_InnerHyperlink”
    NavigateUri=”{Binding RelativeSource= {RelativeSource TemplatedParent}, Path=Url}”
    Style= “{Binding RelativeSource= {RelativeSource TemplatedParent}, Path=HyperlinkStyle}”
    Command=”{Binding RelativeSource= {RelativeSource TemplatedParent}, Path=Command}”
    CommandParameter=”{Binding RelativeSource= {RelativeSource TemplatedParent}, Path=CommandParameter}”
    CommandTarget=”{Binding RelativeSource= {RelativeSource TemplatedParent}, Path=CommandTarget}”
    IsEnabled=”{Binding RelativeSource= {RelativeSource TemplatedParent}, Path=IsEnabled}”>
    <local:BindableRun
    BoundText=”{Binding RelativeSource= {RelativeSource TemplatedParent}, Path=Content}”/>
    </Hyperlink>

    SearchTextBox:
    http://davidowens.wordpress.com/2009/02/18/wpf-search-text-box/

    WPF Datagrid (I’m sure you know about this one):
    http://www.codeplex.com/wpf

    Splitbutton (Couple different flavors here):
    http://anothersplitbutton.codeplex.com/
    http://www.codeproject.com/KB/WPF/WpfSplitButton.aspx
    http://blogs.msdn.com/llobo/archive/2006/10/25/Split-Button-in-WPF.aspx
    http://wpfsplitbutton.codeplex.com/

    Closeable Tab:
    http://geekswithblogs.net/kobush/archive/2007/04/08/CloseableTabItem.aspx

    Loading animation (I find that using the base is fine but making these your own is pretty easy):
    http://social.msdn.microsoft.com/forums/en-US/wpf/thread/0875ebf8-bb77-45ea-a929-d40743a3bf03/
    http://chriscavanagh.wordpress.com/2008/07/25/improved-xaml-loading-animation/
    http://brianlagunas.com/2009/08/21/a-simple-wpf-loading-animation/

    DockPanelSplitter (added this after the post as I found it the same day, amazingly helpful control):
    http://www.codeproject.com/KB/WPF/DockPanelSplitter.aspx

    FYI – if any of these links are down, please let me know and I’ll either update the link.

    UPDATE: Fixed the Linklabel link to actually point to the place it stated. Oops

  • Can’t figure out how to implement a custom IDataReader to my collection

    Posted on October 22nd, 2009 biggert No comments

    I hope someone can help me here… I’ve been working on this for 4 days now with barely any luck.

    Here’s the question:

    I know it is possible to create a custom datareader (inferring from the IDataReader interface) which accesses the data in a collection. I’ve seen it used in other third-party controls and am wanting to do it myself. I’ve come across an ancient (2004) website of how a guy explains how to do it (http://blogs.msdn.com/yvesdolc/archive/2004/11/08/254209.aspx) but I am having difficulty implementing his code since he did not provide examples and 2004 C#/.NET2.0 might not be as performance-tuned as the latest and great C#/.NET3.5. Can anyone assist me in either providing some samples on how to do this or providing some sources that can teach me how to do this. I’m googled up and down on a tutorial on how to write a custom datareader but everything I find isn’t very helpful… it either lists code that’s already complete without good information of how they got there or has code that doesn’t do what I need it to do.

    Just to make it easy, I’ve included an example collection in the code so that, if examples are provided, they can reference it.

    NOTE: Just an additional item, if this can be generic-ized in a way to support different types of collections, that’s a huge plus!

    public class Person
    {
         public int ID {get; set;}
    
         public string Name {get; set;}
    
         public string Gender {get; set;}
    
         public Person()
         {
    
         }
    
         public Person (int id, string name, string gender)
         {
    
              ID = id;
              Name = name;
              Gender= gender;
         }
    }
    
    public class People : List
    {
         public People { };
    }
    
    public void Main()
    {
         Person person1 = new Person(1, "John Doe", "Male");
         Person person2 = new Person(2, "Jane Smith", "Female");
         Person person3 = new Person(3, "Tom White", "Male");
    
         People peeps = new People();
    
         peeps.Add(person1);
         peeps.Add(person2);
         peeps.Add(person3);
    
    }
    

    UPDATE (10/29/2009): Well, I figured out a way to get his code and it was well worth the effort as I noticed an increase in performance (as well as a significant decrease in MEM usage) when using his datareader over converting to a datatable. I’m busy coding away at it and I having yet figured out how to keep it as generic as I’d like but his code works well for now. I’ll post the solution (using his code) at a later date so everyone can see. It’s actually quite simple….