VB.NET - Importando um projeto no SharpDevelop
No artigo - Criando um projeto no SharpDevelop - mostrei como criar um novo projeto usando aquele IDE. Neste artigo irei mostrar como importar um projeto já pronto e feito no Visual Studio .NET para o ambiente do SharpDevelop.
Vou importar um projeto pronto e feito no VS.NET onde preenchemos um controle ListView com dados de uma tabela Access.
Inicie o SharpDevelop . Você verá uma tela parecida com a tela abaixo.
![]() |
Para importar um projeto existente selecione o menu Arquivo opção Importar Projeto
![]() |
Na janela - Importar Projeto - selecione o projeto que deseja importar e a localização para onde vai importar o projeto

Clique no botão - Start - (deveria ser Iniciar em português) e pronto o seu projeto esta importado e convertido.
Perceba que temos um formulário : frmMain.vb e um arquivo listViewData.vb onde estão os códigos do projeto.
![]() |
É verdade que teremos que faze alguns ajustes . O evento Click do botão de comando não tem o underscore como no VS .NET assim : Private Sub btnGetCusts_Click deverá ser convertido para private Sub BtnGetCustsClick.(Antes de fazer a mudança recompilei o projeto e ele rodou sem problemas)
Outro detalhe que você deverá ficar atendo é o nome padrão dos controles . No VS.NET o nome padrão é constituído pelo nome da classe e o numero 1. Assim temos TextBox1 , Button1 , Label1 , etc. No SharpDevelop o nome padrão seria : TextBox , Label , Button , etc.
O projeto que importamos faz o preenchimento de uma controle ListView a partir da tabela Custormers do banco de dados Northwind.mdb.
O código do projeto é o seguinte :
- Código do evento Click do botão - Get Customers. - do formulário do principal do projeto:
| Private Sub btnGetCusts_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
btnGetCusts.Click Call GetCustomers() End Sub |
- O código da rotina GetCustomers() que obtêm os dados da tabela:
| Private Sub GetCustomers() Dim myCon As OleDbConnection Dim sqlCmd As OleDbCommand = New OleDbCommand("SELECT * FROM Customers") Dim myData As OleDbDataReader Dim itmListItem As ListViewItem Dim lvhHelper As ListViewData = New ListViewData() myCon = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\teste\northwind.mdb") Try myCon.Open() sqlCmd.Connection = myCon myData = sqlCmd.ExecuteReader lvhHelper.FillListView(lvwCustomers, myData) myCon.Close() Catch eOleDb As System.Data.OleDb.OleDbException MessageBox.Show(eOleDb.ToString) End Try End Sub |
- Finalmente o código da classe FillListView - que recebe o nome do controle ListView e um objeto com os dados do tipo OleDbDataReader.. Esta classe esta no arquivo ListViewData.vb.
| Imports System.Data.OleDb Public Class ListViewData Public Sub FillListView(ByRef MyListView As ListView, ByRef myData As OleDbDataReader) Dim lvwColumn As ColumnHeader Dim itmListItem As ListViewItem Dim strTest As String Dim shtCntr As Short MyListView.Clear() For shtCntr = 0 To myData.FieldCount() - 1 lvwColumn = New ColumnHeader() lvwColumn.Text = myData.GetName(shtCntr) MyListView.Columns.Add(lvwColumn) Next Do While myData.Read itmListItem = New ListViewItem() strTest = IIf(myData.IsDBNull(0), "", myData.GetString(0)) itmListItem.Text = strTest For shtCntr = 1 To myData.FieldCount() - 1 If myData.IsDBNull(shtCntr) Then itmListItem.SubItems.Add("") Else itmListItem.SubItems.Add(myData.GetString(shtCntr)) End If Next shtCntr MyListView.Items.Add(itmListItem) Loop End Sub End Class |
Você pode compilar a aplicação no menu Compilar | Compilar Combine . Se não houver erros durante a compilação basta executar o projeto. (Ainda não sei o que quer dizer combine em Portugal apenas deduzo...)
Clicando no botão carregar dados teremos o resultado exibido a seguir.
![]() |
Acabamos de importar um projeto feito no VS.NET no SharpDevelop sem grandes problemas. Embora o projeto seja muito simples. Aguarde mais artigos sobre a utilização do SharpDevelop onde iremos importar um projeto com acesso a dados com opção para alterar , incluir , excluir e atualizar dados.
Até mais
![]()
José Carlos Macoratti