|
Go easy, start with plain arrays: (of course replace Freds_Box with the REAL class)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication2
{
public class Freds_Box
{
public int somedata;
public Freds_Box(int HowMuch)
{
somedata = HowMuch;
}
}
public class Fred
{
private Freds_Box[] freds_Boxes = new Freds_Box[] {new Freds_Box(25),
new Freds_Box(79)
};
public Freds_Box[] Freds_Boxes
{
get { return freds_Boxes; }
set { freds_Boxes = value; }
}
}
class Program
{
static void Main(string[] args)
{
Fred container = new Fred();
Console.Write(container.Freds_Boxes[0].somedata);
Console.Write(container.Freds_Boxes[1].somedata);
}
}
}
|
|
|
|
|
What are you actually trying to achieve with this?
I ask because it seems a long winded way to do whatever it is you are trying to do.
What is it not working? I tried it and it worked fine (I had to dummy the Freds_Box class):
public class Fred
{
public static Freds_Box Freds_Box1 = new Freds_Box("Box 1");
public static Freds_Box Freds_Box2 = new Freds_Box("Box 2");
}
public class Freds_Box
{
public string Fred;
public Freds_Box(string init)
{
Fred = init;
}
}
public partial class SomeComponent
{
private Freds_Box _Local_Freds_Box;
public SomeComponent(int i)
{
if (i == 1)
{
_Local_Freds_Box = Fred.Freds_Box1;
}
else
{
_Local_Freds_Box = Fred.Freds_Box2;
}
}
public Freds_Box Local_Freds_Box
{
get { return _Local_Freds_Box; }
set { Local_Freds_Box = value; }
}
}
and a button:
private void button1_Click(object sender, EventArgs e)
{
SomeComponent sc1 = new SomeComponent(1);
SomeComponent sc2 = new SomeComponent(2);
MessageBox.Show("sc1: " + sc1.Local_Freds_Box.Fred + "\n" + "sc2: " + sc2.Local_Freds_Box.Fred);
}
Message box:
"sc1: Box 1"
"sc2: Box 2"
You should never use standby on an elephant. It always crashes when you lift the ears. - Mark Wallace
C/C++ (I dont see a huge difference between them, and the 'benefits' of C++ are questionable, who needs inheritance when you have copy and paste) - fat_boy
|
|
|
|
|
Hello All ,
Is there a way to display list (containing strings) items in a message box?
List<string> test = new List<string>();
test.add("one");
test.add("two");
test.add("three");
And then displaying all the list items together in a single message box?
Like
<br />
MessageBox.Show(test);
Thanks,
|
|
|
|
|
Not as far as I am aware.
However, a Messagebox is nothing much more than a Dialog. Design your own.
Henry Minute
Do not read medical books! You could die of a misprint. - Mark Twain
Girl: (staring) "Why do you need an icy cucumber?"
“I want to report a fraud. The government is lying to us all.”
|
|
|
|
|
Following is basic example to do so.
MessageBox.Show(string.Concat(test.ToArray()));
You can explore more to fulfill your requirement or to customize it at
whatever level you need.
Hope this will help!
Jinal Desai - LIVE
Experience is mother of sage....
|
|
|
|
|
try
MessageBox.Show(string.Join(Environment.NewLine,test.ToArray()));
|
|
|
|
|
Hi,
I develop a GMAO csharp smart device application.I try now to connect to my remote database.mdf using TCP/IP protocol.I created a combobox where i want to extract informations from my table using this select statement:
"SELECT DISTINCT NObt FROM 4BT "; .For my IPadreess of my computer,I use the ipconfig/all command and I take the
IPv4 Address. . . . . . . . . . . : 192.168.1.4(Preferred)
My hole code is like this:
using System;
using System.Linq;
using System.Data.SqlServerCe;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace ModeDifféré
{
public partial class Form6 : Form
{
public Form6()
{
InitializeComponent();
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void Form6_Load(object sender, EventArgs e)
{
string sConnection = "Data Source=192.168.1.4,1433;Initial Catalog=GMAO;User ID=sa;Password=sa;";
string sSQL = "SELECT DISTINCT NObt FROM 4BT";
SqlCeCommand comm = new SqlCeCommand(sSQL, new SqlCeConnection(sConnection));
SqlCeDataReader dr = null;
try
{
comm.Connection.Open();
dr = comm.ExecuteReader();
while (dr.Read())
comboBox1.Items.Add(dr[0]);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
return;
}
dr.Close();
comm.Connection.Close();
}
}
}
When running,this error appears:
Unknown connection option in connection string: initial catalog.
As an information,I follow the steps of this link:http://netcf2.blogspot.com/2005/12/accessing-sql-server-express-from.html[^]
What is the problem???
Thank u for all u suggestion
Regards
Marwen
|
|
|
|
|
You're trying to access a Sql Express-database using the classes that are designed for SqlCe. Those are two different database-systems; Sql Express is server-based, and you connect using a SqlConnection . SqlCe is file-based, that's what's on your mobile device.
Change the data-provider and it should work.
I are Troll
|
|
|
|
|
Hi Eddy,
sorry but i don't understand what u mean and how can i change the data-provide.I am not so good at english computer science vocablary.
Thanks
|
|
|
|
|
Tunisien86 wrote: I am not so good at english informatic vocablary.
Your English is fine, but there's a mixup in classes that act and look similar.
The one on the mobile device has an .sdf-extension and is a file-based datastore. You've already worked with this type of database. Typically, you make a SqlCeConnection [^] and execute a SqlCeCommand [^].
The database on Sql Server has a .mdf extension, and is a server-based datastore. It works in a similar fashion, you open a SqlConnection [^] and execute your SqlCommand [^]
In short, when you talk to .sdf you use a SqlCeConnection, when you talk to an .mdf you use a SqlConnection. The long story can be found on MSDN[^].
I are Troll
|
|
|
|
|
Hi Eddy,
Thanks a lot for u collaboration .I understand u meaning.I make changement but still not working.
My new code is like that:
using System;
using System.Linq;
using System.Data.SqlServerCe;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace ModeDifféré
{
public partial class Form6 : Form
{
public Form6()
{
InitializeComponent();
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void Form6_Load(object sender, EventArgs e)
{
string sConnection = "Data Source=192.168.1.4,1433;Initial Catalog=GMAO;User ID=sa;Password=sa;";
string sSQL = "SELECT DISTINCT * FROM D°_urgence";
SqlCommand comm = new SqlCommand(sSQL, new SqlConnection(sConnection));
SqlDataReader dr = null;
try
{
comm.Connection.Open();
dr = comm.ExecuteReader();
while (dr.Read())
comboBox1.Items.Add(dr[0]);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
return;
}
dr.Close();
comm.Connection.Close();
}
}
}
In fact,my combobox should contain the result of my select statement,but when running,the system is show an sqlexception and nothing is added to my combobox.
Is the IPadress the problem?the ipconfig command returns to me this:
C:\Users\Admin>ipconfig /all
Windows IP Configuration
Host Name . . . . . . . . . . . . : Admin-PC
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Hybrid
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No
Wireless LAN adapter Wireless Network Connection 2:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft Virtual WiFi Miniport Adapter
Physical Address. . . . . . . . . : 06-1B-9E-4A-A0-8C
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
Wireless LAN adapter Wireless Network Connection:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Atheros AR5007EG Wireless Network Adapter
Physical Address. . . . . . . . . : 00-1B-9E-4A-A0-8C
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fe80::cc28:8ea3:82ea:4c4f%13(Preferred)
IPv4 Address. . . . . . . . . . . : 192.168.1.4(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Lease Obtained. . . . . . . . . . : mercredi 5 mai 2010 10:08:26
Lease Expires . . . . . . . . . . : jeudi 6 mai 2010 10:08:25
Default Gateway . . . . . . . . . : 192.168.1.1
DHCP Server . . . . . . . . . . . : 192.168.1.1
DHCPv6 IAID . . . . . . . . . . . : 234888094
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-13-55-22-65-00-1A-92-FC-E6-7E
DNS Servers . . . . . . . . . . . : 192.168.1.1
192.168.1.1
NetBIOS over Tcpip. . . . . . . . : Enabled
Ethernet adapter Local Area Connection:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . : home
Description . . . . . . . . . . . : Realtek RTL8139/810x Family Fast Ethernet
NIC
Physical Address. . . . . . . . . : 00-1A-92-FC-E6-7E
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
Tunnel adapter isatap.home:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft ISATAP Adapter
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Tunnel adapter Local Area Connection* 11:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft Teredo Tunneling Adapter
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
IPv6 Address. . . . . . . . . . . : 2001:0:4137:9e74:454:bc2:3f57:fefb(Prefer
red)
Link-local IPv6 Address . . . . . : fe80::454:bc2:3f57:fefb%11(Preferred)
Default Gateway . . . . . . . . . : ::
NetBIOS over Tcpip. . . . . . . . : Disabled
Tunnel adapter isatap.{9CD32A2C-C6BD-42FC-9F45-933E12729451}:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft ISATAP Adapter #2
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Tunnel adapter isatap.{13CC6962-1531-4DD0-BC0C-47DEA185DF81}:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft ISATAP Adapter #3
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
.
I took the
IPv4 Address. . . . . . . . . . . : 192.168.1.4(Preferred)
Or should I take the physical @ as the @ of my computer?
I really i don't understand the problem.
Thanks
|
|
|
|
|
Hi Calla,
Eddy suggests that i change sqlcecommand to sqlcommand because I use .mdf database.
Or i don't know maybe i am not understanding what he said
Thanks
|
|
|
|
|
You'll have to check
1) Do you have network connectivity on your emulator: start Internet explorer on the emulator, and try to access a well known website (www.codeproject.com).
2) Is your firewall open on port 1433?
Also, which exception are you getting now? we need the full text of the exception, which you should now have, if you followed Luc Pattyns' code.
|
|
|
|
|
Hi Micheal,
As a reponse of u suggestions:
1)my emulator doesn't have network connectivity.
2)how can i know that my firewall is open on port 1433?
3)the sqlexception I got :http://yfrog.com/iycaptureawj[^]
Thanks
|
|
|
|
|
Tunisien86 wrote: the sqlexception I got :http://yfrog.com/iycaptureawj[^]
Yeah, that one we've already seen. try to get the full exception ON THE PC (see my other reply about this)
Tunisien86 wrote: my emulator doesn't have network connectivity.
Well, there you have it. No point in testing the others until you can establish that.
1) Is your emulator cradled?
2) do you see the connection in Mobile device center or in ActiveSync?
|
|
|
|
|
|
You should cradle it. cradling will give the emulator an IP address.
In mobile device center, be sure to select 'DMA' in connection settings. Then do the internet explorer test again.
|
|
|
|
|
Hi Michel,
Sorry for yesterday,I couldn't continue with u because the time work finished and I have no Internet connexion in home.When trying to cradle my emulator,the first step I found is to enable TCP/IP connexion in the emulator.This required to install Virtual PC 2007but got this error while installing:
Error 1335. The cabinet file 'product.cab' required for this installation is
corrupt and cannot be used..."
I tried redownloading VPC and even saving to different disk and still get
same error.
Any ideas?
thanks
|
|
|
|
|
Hi Freinds,
Finally I depass the problem of the connexion to server by the DB File's attachment . No exception apperas.Still now the problem of the filling of my combobox .I try with sqldataset instead of the sqlreader like this:
string sConnection = "Data Source=127.0.0.1,1433;Persist Security Info=True;Initial Catalog=GMAO;User ID=sa;Password=sa";
string sSQL = "SELECT com FROM energie; ";
SqlConnection conn = new SqlConnection(sConnection);
SqlCommand comm = new SqlCommand(sSQL, conn);
DataSet ds = new DataSet();
SqlCeDataAdapter da = new SqlCeDataAdapter();
SqlDataReader dr = null;
try
{
comm.Connection.Open();
da.Fill(ds, "SQL Temp Table");
foreach(DataRow d in ds.Tables[0].Rows)
comboBox1.Items.Add(d.ToString());
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
return;
}
dr.Close();
comm.Connection.Close();
}
but nothing is added to my combobox.
Thanks in all cases for u collaboration
I am really sooooooooooo happy
|
|
|
|
|
Tunisien86 wrote: In fact,my combobox should contain the result of my select statement,but when running,the system is show an sqlexception and nothing is added to my combobox.
It's easier to find a problem if you include the message of the exception. In this case it's probably caused by a common error - your tablenames contain illegal characters. You can "fix" it with brackets;
string sSQL = "SELECT DISTINCT * FROM [D°_urgence]";
Also note that the change in code assumes that your select-statement is run against an SQL Server instance, one that has access to the *.mdf-file that you want to read from. If this data is stored locally, in an *.sdf file, then you'd indeed need the SqlCe -classes.
Tunisien86 wrote: Or should I take the physical @ as the @ of my computer?
Ideally, you take the computers' name and the instance name and put it in a configurationfile. Something like "Admin-PC/MySql2005Instance". There might be lots of IP-adresses on a computer, but it usually only has a single name that identifies it in the network. It also communicates easier, imagine yelling "Reboot Skynet and Idefix" in contract to "Reboot One-Nine-Two Doht One-Six-Eight Doht One Doht Zero.. - No Four, I meant Four!"
I are Troll
|
|
|
|
|
Hi Eddy,
I wanna clarify something.The database I would connect to is the database of the society I work in.As u know,maintenance societies try try to make easy its work:a technician uses the PDA to connect to the database of the society and finishs his work.The "big" database is a .mdf file.Something was not clear how can i connect to .mdf databse while i should connect to .sdf fine because I develop a mobile application??Is that possible
Also about the ip@,is it true what i did?I don't understand u statement really
is it a problem of Firewall????
Thanks
|
|
|
|
|
hI Eddy,
when trying to cradle my emulator,I can't install the virtual PC 2007 and getting this error:
Error 1335. The cabinet file 'product.cab' required for this installation is
corrupt and cannot be used..."
What can i do?
|
|
|
|
|
Goodmorning
Redownload Virtual PC and reinstall it, looks like your setup is corrupt. How is the Sql-query going?
I are Troll
|
|
|
|
|
Hi,
I redowload VPC2007 and install it but still the same error.The sql query goes fine.Tha problem is now in the cradling of the emulator.
Thanks
|
|
|
|
|
Hi
Thanks I cradled my emulator.The Emulator must be running to be able to cradle it.
When should I uncradle my emulator???
When trying to install windows mobile device center,it failed.Should i connect a real device to be able to install this tool???
How can I get the IP number that is used for my device and PC for this TCP/IP connection??????
Thanks a lot for u clarification
Marwen
Smile
|
|
|
|