How to create a simple Facebook desktop application with C#

Hey there, while surfing the web I found that there are not too much tutorials about how to create a desktop application for facebook.

Here I will show you a really basic tutorial to create a facebook application for your desktop that will update your status.

I’m assuming that you already know the basics about facebook Web Services, if you don’t, go to


Visual Studio 2008 Express

Facebook Developer Toolkit

1. Add Facebook Components to Visual Studio

Once you have installed the Visual Studio 2008, add the facebook components to the Visual Studio Toolbox.

Right click on the toolbox area and select “Choose Items…”


Now click on the “Browse…”  Button, locate the folder where the facebook components are and add the following libraries:



facebook.web.dll <— Add this if you want to create Web Projects


Then simply click the “OK” button and you are done.

You can add these components to a new tab named “Facebook” or something if you don’t want to have them on the “General” tab.

2. Create a new project for the application.

Go to File > New Project > Windows Forms Application.


Drag the “FacebookService” component to your application Form and add the API Key and the Secret Key that facebook has already assign to your application.


Now add a Button to Log In, a TextBox to Write your status and another Button to Share your status.


Double Click on the “Login” Button to write the code that it will execute. Add the following lines:


facebookService1.GetExtendedPermission(facebook.Types.Enums.  Extended_Permissions.status_update);
catch (Exception exception)
MessageBox.Show(this, exception.Message, “Error”);

The previous lines will connect you to facebook and ask for the necessary permissions that the application needs to run.

Now lets tell the “Share” Button to do something. Double click on it and add the following lines to the code:

String status = updateText.Text;
Boolean updated = facebookService1.API.users.setStatus(status);
if (updated)
updateText.Text = “”;

These previous lines will update your status on facebook and will clear the textbox.

Now you can run your application and update your status from the desktop.

I hope that this tutorial help. Feel free to write questions or comments if you have them.

WebLab | Salvador Fuentes


How can I merge C# with popular social Web Services?

Nowadays we can create distributed systems using Web Services. A Web Service is an applicative logic unit that we can access using internet standard protocols. With these services we can create applications that are able to connect with servers in the web and allowing us to obtain information from them.

C# uses SOAP (Simple Object Access Protocol) as a communication protocol for interacting with different servers through Web Services.

Social Networks like Twitter or Facebook offer Web Services with methods that allow us interact with the information we got from them, these methods are included in the Application Programming interface (API) of each Social Network. To be able to communicate with these API’s we need to download and install the necessary libraries, this way C# will communicate transparently with these Web Services.

WebLab | Salvador Fuentes

How can I get the most functionality of a book-shaped interface?

I think that there are a lot of good ideas to create an excellent and functionality application, like our project a Twitter Desktop Application. There are some easy API’s to develop whatever you want but one of the main objectives is the Graphics User Interface. First we need to have cleared some aspects before the main theme, the book-shaped interface.

The first thing I need to get clear as a developer is the Form orientation, vertical or horizontal. The most common for example, a Twitter App orientation is in a vertical way because of the stack and the appearance of the twits like a mini blog (inverse chronically order). I think that a horizontal Twitter App would be interesting and something out of the common.

The next thing we should care about is the size of the form. Many people including myself prefer a form with small sizes, like the half or the fourth part of our screen because I like to see my desktop full of windows forms, like a real desktop where I can drop everything wherever I want having multiple open windows.

A personalized application is the new black. We are always looking around modifying our interface, with colors, backgrounds, pictures and more. The objective here is to “create” an application with your sign.

The next thing is to have an intuitive menu, something clear and easy to use. Think that everyone would like to use your application.

Finally create a book-shaped application and your content display. We want to make that our application looks like a book and create something new. In a book we can see the first page (page one on your left side) and the next page (page two on the right side). When we pass from page one to page two, now our current page is number two, the previous is the page one and the next page (page 3) we can’t see it. So a solution is to have a current page that is the main page in the center and the previous page on the left. When we want to see a previous page in the current, we need to divide the application in 3 parts, the middle part would be your current page (a previous one), the part on the left would be another previous page from the current and the third part (on the right of the current) would be the next page. This create the effect that you just turn the page and now you can see instead of two, three pages at the same time.

Tweeter in a BookNever stop thinking, never stop innovating


Have to work remotely? I present you my friends Yuuguu + dropbox + Skype.

Work together remotely could be one the worst nightmare because we quickly think use an instant messenger with plain text to communicate with our colleagues and that could result boring and difficult for work. This is the point when you start to look for some alternatives, and here are our selections:

Yuuguu is an application than use some features of Skype and add one very important the possibility to share the screen with more than one user.

Dropbox an storage application and service that give 2GB of free on-line space, this space can increase free by referring your friends or u can pay a small amount for it.

Finally Skype a very popular and common application this days, is a software application that allow us to make calls over the Internet, the important feature for us is conference calls.

The most important thing is that all that software has a free edition and works really good for small groups.



Is there any room left for Yet Another Twitter Application (YATA) ?



Of course there’s room for another Twitter Application because we are developing an application that try to combine the most popular features that already exists. Moreover we will add new features to this awesome application besides that we will try to offer a good looking interface to this application.

Another interesting thing is that we will add Facebook update status support in order to have just one app to manage both status.

Finally we can say that Tweetbook project is not just another Twitter app, this would be a killer app to update your status and also have the best features that already exists, so stay in touch with this blog, and learn more about C# and also in a few days you will be able to download this app and then you will know that this is what you’re looking for.


WebLab|Osvaldo Huerta

How to use .NET dataGridView component to display twitter timeline using C#

Hey, this would be a basic tutorial about how to use the daytaGridView component to display your friends timeline.


-Visual Studio Express 2008

-Twitterizer Framework

1. Add the twitterizer library to the project

Menu>Project>Add Reference…


Select the current path of the Twitterizer libray that you donwloaded


2. Add the Twitterizer libray to the project

using Twitterizer.Framework;

3. Add the dataGridView component to the interface



4. Also add a button with the text “Update timeline”


5. Create a method called updateTimeline with no parameters like this:

private void updateTimeline()
Twitter t =new Twitter(“user”, “password”);
dataGridView1.DataSource = t.Status.FriendsTimeline(Parameters);
catch (TwitterizerException ex)
MessageBox.Show(this, ex.Message, “Error”);

private void updateTimeline()


Twitter t =new Twitter(“user”, “password”);
dataGridView1.DataSource = t.Status.FriendsTimeline(Parameters);
catch (TwitterizerException ex)
MessageBox.Show(this, ex.Message, “Error”);

6. Double click through the button and call the method that we had created before.

private void buttonSignIn_Click(object sender, EventArgs e)




7. Run your application to see your Friends Timeline status.


As you can see, theres too much information in the dataGridView, so we need to chage some properties in order to improve the appearence of the timeline.
8. In the design view, look for a play button in the dataGridView component and click on it
Then clic on Edit Columns

First colum is for the user06tutorial

the second one is for the status
9. Then bind the colums with some property like this
The column Status will show the data from the Text column

The column User will show the data from the TwitterUser column
10. Add this line of code to the method UpdateTimeline

private void updateTimeline()

Twitter t = new Twitter(“user”, “password”); //use your own username and password
dataGridView1.AutoGenerateColumns = false;
dataGridView1.DataSource = t.Status.FriendsTimeline();
catch (TwitterizerException ex)
MessageBox.Show(this, ex.Message, “Error”);
//with this the dataGridView won’t add more columns
11. Run your application and watch the new interface

12. Finally your code should be like this

Ok this is a basic tutorial of how to use the dataGridView component to display the twitter timeline, but of course, the dataGridView compont has a lot of methods and properties to change the behavior of this component.
I hope this tutorial will be helpfull for this persons who are starting with twitter application using the twitterizer framework.
WebLab|Osvaldo Huerta

To be or not to be …

Seriously, how could anyone live with him/herself if he/she does not knows the answers to the following fundamental life questions:

  • Is there any room left for Yet Another Twitter Applicattion (YATA) ?
  • Have to work remotely? I present you my friends Yuuguu + dropbox + Skype.
  • How can I get the most functionality of a book-shaped interface?
  • How can I merge C# with popular social Web Services? ( dammit, this question still wakes me up at night with terror)
  • Hey, I want to pod (shorten) my urls using C#, can I ?

Well mate, fret not, all of these questions will be answered here, shortly, and we assure you, you will be able to sleep easy again 🙂


Tweetbook Project

The current project we’re working on is code-named “Tweetbook”. It’s main objective is to create a .NET C# based desktop client that can handle  a user’s both Twitter and Facebook status.

The project objectives are

  • To  create one app that manages two popular Web Services.
  • Ability to handle multiple Twitter accounts per user.
  • Made using C# , based on Microsoft’s .NET framework.
  • Be a research project and generate knowledge about how to work with these services using MSFT technologies.
  • Create a lightweight, usable application.
  • Create an innovative GUI (Graphical User Interface) that forests a unique and efficient User Experience.
  • The application will contain a custom set of features based on the  most popular ones from current Twitter and Facebook applications, plus a couple of surprises 😉

Why are we doing this?

  • Create a unique software offering that meets the needs of most Twitter and Facebook users.
  • Learn about MSFT technologies and Web Services.
  • Have fun 😉


Say Hello and welcome…

Hi everyone, and welcome to this project site. We hope you enjoy the adventure from here like we do. We are working very hard in our fist project, the facebook+ twitter desktop application and we let you know from here about us and our development.

Stay close…


Hello world!

Hello folks.