|
When you fill the datagrid from a dataset, and you want to add a record to the grid, and you did not fill in all the fields and you press "enter", it hops to the next line. You can still go back and fill in those blank fields. But when I use a the rowfilter of a dataview, when i do the same and not fill in all the fields and press "Enter", then that record kind of dissapears, but gives me an error when I try to update. How can I resolve this problem?
|
|
|
|
|
Hi To All
I am developing a smartclient application, which has got a webservice contains a method to insert a row in the database table, I am using Microsoft application block for Queuing and Caching mechanisim, Caching mechanisim works fine... But when try to put the service in a queue its giving me the following error
"An unhandled exception of type 'System.Configuration.ConfigurationException' occurred in microsoft.applicationblocks.cache.dll
Additional information: Configuration information is not available."
in the cache service class...
This is taking hell out of time from me...
Please let me know what and all i should configure when i use Microsoft Application Block,
It would be great helpful if you provide the more information on this..
|
|
|
|
|
Hello,
Would you tell me function in C# to get char from it's ASCII. It is same function 'Chr' in VB .Net
Thank you.
|
|
|
|
|
char c = (char)43;
simple cast.
If you need to convert byte[] to string see System.Text namespace for more stuff.
This posting is provided "AS IS" with no warranties, and confers no rights.
Alex Korchemniy
|
|
|
|
|
Casting between char and int will give you the same results as the Unicode VB functions ChrW and AscW . If you need to replicate the ANSI versions (Chr and Asc ), there is a little more work involved:
public static char Chr(int i)
{
if (0 <= i && i <= 127) return (char)i;
if (i < -0x8000 || i > 0xFFFF) throw new ArgumentOutOfRangeException();
System.Text.Encoding enc = System.Text.Encoding.Default;
if (enc.GetMaxByteCount(1) == 1 && (i < 0 || i > 0xFF)) throw new ArgumentOutOfRangeException();
System.Text.Decoder dec = enc.GetDecoder();
byte[] b;
char[] c;
if (0 <= i && i <= 0xFF)
{
b = new byte[1];
b[0] = checked((byte) (i & 0xFF));
c = new char[1];
dec.GetChars(b, 0, 1, c, 0);
}
else
{
b = new byte[2];
b[0] = checked((byte) ((i >> 8) & 0xFF));
b[1] = checked((byte) (i & 0xFF));
c = new char[1];
dec.GetChars(b, 0, 2, c, 0);
}
return c[0];
}
public static int Asc(char ch)
{
int i = (int)ch;
if (i < 128) return i;
System.Text.Encoding enc = System.Text.Encoding.Default;
char[] c = new char[] {ch};
byte[] b = enc.GetBytes(c);
if (b.Length == 2 && BitConverter.IsLittleEndian)
{
byte t = b[0];
b[0] = b[1];
b[1] = t;
}
if (b.Length == 2)
return BitConverter.ToInt16(b,0);
else
return b[0];
}
"These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer
|
|
|
|
|
Hi,
I'm just learning MS C# .net and was creating simple little windows applications. Now if I want to share my applications with friends do I have to have them install the .net framework? I tried giving my realy simple application to a friend and he couln't run it until he installed the .net stuff. Is there a way arround it? Or do you think I should use a different programming suite (maybe Delphi?) since I want to someday start selling the software I develop and have it run on any windows machine with or without .net.
Thanks
-Eric
|
|
|
|
|
Well that's two very seperate issues. Firstly, yes, if people wish to run applications developed with the .net framework then they need to have the .net framework installed. There is a distributable version of the framework which can be included with your setup files (but that's a seperate issue). Secondly, well that's a pretty subjective issue. I don't feel that requiring the .net framework is any hinderance to selling software (as mentioned above you can distribute the framework installer with your apps), but that's really down to what your target market is going to be.
HTH
|
|
|
|
|
One more addition to the above post - .net framework is already included into Windows (from 2003 version), so I don't think that in nearest future there will be any problem with .net framework installed on client computers.
By the way, with any language you have some libraries that should be installed and this never was a problem.
The only thing here is, that if you want to sell your applications right now, and your clients are mostly not very good with computer, so it's difficult for them to download and install .net framework... In this case it would be funny to sell application less then 1 Mb in size with .net framework redistributable package ~24 Mb size... But, as was said - it depends on your clients.
Robin Panther
|
|
|
|
|
Well, I was hoping to make shareware type programs so size may be an issue. Seems kinda silly to download a 30 meg address book shareware program. I've done some programming in Visual C++ but it isn't that RAD. (rapid application development) But the size of the aplications were very small. Thats good that the .net framwork is already included into windows 2003+ but I still have friends that use 2000, and NT. Basically I want my software to reach most clients (XP, NT, 2000, and maybe even ME/98). So, can I make C# work for me?
|
|
|
|
|
I have an IPAQ PDA and I want to write a c# code which uses a image file that must be downloaded over internet by giving the url. I tried
WebClient Client = new WebClient ();
Client.DownloadFile("http://www.xxxx.com/image.jpg", " image.jpg");
but compact framework doesn't cover WebClient class.
So how can I handle it with httpwebrequest class or any other class???
By the way, how can I just directly put it on the screen? without using memory, I mean I dont want it to be written on harddisk.
thanks...
|
|
|
|
|
Hello,
I am very new to C#, so please bear with me.
Currently we are creating an application which contains controls that are created and added dynamically to the application based on user profile.
We have created a separate DLL where a list of images are added to the resource (via imageList, through image stream) and the images are managed there. In the application, image-access is encapsulated by the DLL. In essense, we have code that looks like this in the main application:
myUserControl.Image = ImageManager.getInstance().getImage( IMAGE_TYPE_CONSTANT );
Is this common practice? How else would you abstract the image-access from the application? What are the pros and cons of this, and other, methods?
Thank you very much,
James
|
|
|
|
|
In c# resources are not numbered with constants. See ResourceManager[^].
Embedding and using resources in c#[^]
I don't have much time for detailed explanations. I hope the links help you.
This posting is provided "AS IS" with no warranties, and confers no rights.
Alex Korchemniy
|
|
|
|
|
Thank you for your reply! We will proceed from the links you gave and see how we can resolve the issue, thanks again!
|
|
|
|
|
Hi...
I have made an listbox and a button to save the items inside the listbox into an xml document.
My code looks like this -->
System.Xml.XmlDataDocument data = new System.Xml.XmlDataDocument();
string CurrentUser = "someone";
string xml;
int count = this.listBoxMusik.Items.Count;
xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
xml += "<GreenSheep>";
xml += "<bruger>" + CurrentUser + "</bruger>";
xml += "<dato>" + DateTime.Now.ToLongDateString() + "</dato>";
xml += "<tid>" + DateTime.Now.ToLongTimeString() + "</tid>";
xml += "<sang>";
for(int i = 0; i < count; i++)
{
xml += "<nummer id=\"" + i.ToString() + "\">" + this.listBoxMusik.Items[i].ToString() + "</nummer>";
}
xml += "</sang>";
xml += "</GreenSheep>";
data.LoadXml(xml);
data.Save(@c:\);
data.RemoveAll();
this work great when i have about 10-20 items in the listbox, but if i add about 1200 items it trows an error!
System.Xml.XmlException: An error occurred while parsing EntityName Line 1, position 7691.
Can anyone tell me why this error comes when i add more than 1000 items?
thanks!
QzRz
|
|
|
|
|
First thing that comes to mind is XmlTextWriter - designed specifically for what you are trying to do.
this.listBoxMusik.Items[i].ToString() is probably returning a string that is messing up your xml
This posting is provided "AS IS" with no warranties, and confers no rights.
Alex Korchemniy
|
|
|
|
|
Can you tell me what to do then?
if it makes problems is there another way to add the text from the listBoxMusik.Item[i] ?
Is it posible to add it to a string first and then add it to the xml?
QzRz
|
|
|
|
|
What i was saying is that ToString() of the item might be returning characters that are not valid -> which makes a mess.
This posting is provided "AS IS" with no warranties, and confers no rights.
Alex Korchemniy
|
|
|
|
|
I search the internet for few examples of accessing the registry and most of them were similar. One that I tried was as follows:
//add line
using Microsoft.Win32;
//open regitry
RegistryKey OurKey = Registry.LocalMachine;
OurKey = OurKey.OpenSubKey("SOFTWARE\\MyReg",true);
//create a sub key
OurKey = OurKey.OpenSubKey("SOFTWARE\\MyReg\\NewReg",true);
OurKey.CreateSubKey("NewKey");
Every thing works up to this points, but when I try to set some valuse for "NewReg" with following line, it still compiles w/no errors but I get an error when run the application
OurKey.SetValue("one","myVal");
or
//OurKey.SetValue("one",(string)"myVal");
ERROR:
Excepttion of type "System.NullReferenceException"
"Object not set to an instance of an object"
any help will be greatly appreciated
|
|
|
|
|
Use debugger to step through your code. Problem is that OurKey is null.
This posting is provided "AS IS" with no warranties, and confers no rights.
Alex Korchemniy
|
|
|
|
|
This one is working fine:
RegistryKey OurKey = Registry.LocalMachine;
OurKey = OurKey.OpenSubKey("SOFTWARE\\",true);
//create a sub key
OurKey = OurKey.CreateSubKey("NewKey");
OurKey.SetValue("one","myVal");
OurKey is null when you are asking to open key, that does not exists. So - check this every time when opening a key - if return value is null, you have to create this key first.
One more thing - each key operation with registry (Open, Create etc.) has return value RegistryKey, so don't forget to assign your key to return value. In your example - when you're Creating SubKey - you do not have return value. That's you mistake.
Hope it'll help.
Robin Panther
|
|
|
|
|
I have build a C# application that has on one of the form a web browser control that diplays various xml files transformed to html via xslt file. I have been trying for ever to control events fired by user intraction on these web pages to be handled in the Form hosting the browser. Anyone has figured this out?
Elie
|
|
|
|
|
Please explain a little more...
If you want to call c# methods from your page hosted in ie - you can use javascript to call c# methods through window.external.methodname. You need to implement IDocHostUIHandler... There's a nice article on CP: http://codeproject.com/csharp/winformiehost.asp[^]
This posting is provided "AS IS" with no warranties, and confers no rights.
Alex Korchemniy
|
|
|
|
|
Thank you Alex for your response. I will check it out. I guess I go this way as a workaround. Actually, my issue was trapping html document events (for instance the A tag onclick event). In other words, I wanted to find out how to trap html element events of a document loaded inside web browser in a C# application. I have found some articles to that meaning, however, no concrete examples for me to proceed with.
Elie
|
|
|
|
|
Hello Alex, the article you suggested was very helpful. However, when I downloaded the sample project I could not get it to run. I could not find the reference MsHtmHstInterop. Have you been able to get it to work? Can you let me know how?
Elie
|
|
|
|
|
I have been able to get it to work. It sure is cool.
IIRC this article can help you: http://www.codeproject.com/csharp/advhost.asp
This posting is provided "AS IS" with no warranties, and confers no rights.
Alex Korchemniy
|
|
|
|