|
making a usercontrol of the panel would make sense,
I'll try this one.
There nothing much to see on the panel
to edit a product:
About 10 databound text boxes
and 2 editable datagrids
are on the panel
Kurt,
thanks for you advice.
|
|
|
|
|
Hi
I am new to programming with outlook 2000 using C#. I wanted to iterate thru all the folders and their mail items.
For ex. the folders can be
Inbox,
Personal
Important
Jokes
....
Official
....
...
......
All i want is to go thru all these folders one by one and read the mails inside those.
Can some one helpme out, mainly for iterating the folders. I am able to read the messages in inbox by specifying the
NS.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
but i dont want to do this. Hope you can understand what i am looking for.
With Regards
Vivaj
|
|
|
|
|
|
Ya, I am using MS Outlook 9.0 object library.
The idea behind this load a .pst file in outlook and read all the mails, not only from inbox but all other folders too. I am able to achieve reading folders in Inbox, i am able to load the .pst file, but i am struck in iterating thru all the folders. Hope my query would have been clear now.
With Regards
Vivaj
|
|
|
|
|
I have a problem with the Deserialize a xml string.
I have a object I serialize:
MemoryStream buffer = new MemoryStream();
System.Xml.Serialization.XmlSerializer xmlSerializer = new System.Xml.Serialization.XmlSerializer(typeof(myobject));
xmlSerializer.Serialize(buffer, schedule);
if I Deserialize the object after this code line, it works fine. But if I store the xml in code it Deserialize it gives me an error.
XmlDocument doc = new XmlDocument();
doc.Load(buffer);
string xml = doc.OuterXml;
XmlTextReader xmlreader = new XmlTextReader(xml);
schedule = (ScheduleDefinition) serializer.Deserialize(xmlreader);
I need the xml string as a parameter, so i need to be able to convert it back into the object. But I always get the message:
{"There is an error in XML document (1, 426)." }
Any other suggestions to accomplish this?
|
|
|
|
|
It sounds like your trying to serialize a string that contains xml using an xml serializer. I've never tried that before, but I have the suspicion that you might have some problems with that. Primarily, if your xml string contains the xml file header (i.e. ), and its embedded in the middle of another xml document, then you will get an error when the parser tries to read that "string". You can only have at the top of an xml document, and it can not exist anywhere else. XML inside XML might be your problem (although I can't guarantee it).
|
|
|
|
|
Hi buddies,
I have discovered something so interesting to myself! Wana share this top secret discovery! here:
We all know that 'lock(lockObject) {...}' causes no more than one thread can enter the block of code (Critical section). I always thought about the argument 'lockObject' that was usually 'this' and its usage while it seems the lock functionality doesn't care about what that argument is.
Recently I concluded the argument is so so important and it has a major usage and that is it lets us create critical sections that are not just one single code block, and different code blocks in different methods even in different classes may construct ONE critical section that no more than one thread may exist in the whole section.
I mean we can group various code blocks into unique critical section by assigning a single object reference as their lock(lockObject) argument. And also one great result is that we can create different critical sections in one class by assigning different lock arguments instead of 'this'; and these sections are independent.
So all you already knew this?! ok but atleast please agree that it is not well documented in MSDN or perhaps it is, but I have never seen it explicitly in the sections discussing lock statement.
Thanks for your note,
- Mohammad
My test console application code:
using System;
using System.Threading;
namespace TestConsole
{
/// <summary>
/// Summary description for Class1.
/// </summary>
class Class1
{
private static readonly object _lockObject1 = new object();
private static readonly object _lockObject2 = new object();
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main(string[] args)
{
Thread t1 = new Thread(new ThreadStart(Method1));
Thread t2 = new Thread(new ThreadStart(Method2));
Thread t3 = new Thread(new ThreadStart(Method3));
t1.Start();
t2.Start();
t3.Start();
Console.ReadLine();
}
static public void Method1()
{
lock(_lockObject1)
{
// critical section 1
for(int i = 0; i < 20; i++)
{
Console.WriteLine("Thread:1 " + i);
Thread.Sleep(100);
}
}
}
static public void Method2()
{
lock(_lockObject1)
{
// again critical section 1
for(int i = 0; i < 20; i++)
{
Console.WriteLine("Thread:2 " + i);
Thread.Sleep(100);
}
}
}
static public void Method3()
{
lock(_lockObject2)
{
// critical section 2
for(int i = 0; i < 20; i++)
{
Console.WriteLine("Thread:3 " + i);
Thread.Sleep(100);
}
}
}
}
}
---
"Art happens when you least expect it."
-- modified at 19:53 Wednesday 9th November, 2005
|
|
|
|
|
Actually, it's recommended you never use lock(this) [that is, locking the class instance] or lock(typeof(TestConsole)) [that is, locking the class type itself). It is highly recommended that if you do use locks, then you should lock private variables in your class, rather than class instance or the class type. The reason is that by using private variables to do locking, you have knowledge of and can control everyone that holds locks on your object. This would not necessarily be true for locking a class instance or the class itself.
Also, as an FYI, the C# lock statement is just syntax candy:
lock(_lockObj)
{
Console.WriteLine("hello!");
}
will get compiled down to:
System.Threading.Monitor.Enter(_lockObj);
try
{
Console.WriteLine("hello");
}
finally
{
System.Threading.Monitor.Exit(_lockObj);
}
Tech, life, family, faith: Give me a visit.
I'm currently blogging about: Morality Apart from God
Judah Himango
-- modified at 11:20 Wednesday 9th November, 2005
|
|
|
|
|
I agree with Judah, locking 'this' or the class itself is very bad practice, and leads to a lot of problems. Standard practice is to use a semaphore, or a synchronization root object, as a lock target. Some simple examples of good locking can be represented by a synchronized collection, or the singleton object:
A singleton:
public class MySingleton
{
#region Singleton Pattern
private static volatile MySingleton m_instance;
private static object m_syncRoot = new object();
public static MySingleton
{
get
{
if (m_instance == null)
{
lock (m_syncRoot)
{
if (m_instance == null)
{
m_instance = new MySingleton();
}
}
}
return m_instance;
}
}
#endregion
}
Synchronizing a collection:
public class MyCollection: CollectionBase
{
private class MySyncCollection: MyCollection
{
internal MySyncCollection(MyCollection col)
{
m_col = col;
m_root = col.SyncRoot;
}
private MyCollection m_col;
private object m_root;
public override object SyncRoot
{
get
{
return m_root;
}
}
public int Add(object item)
{
int index;
lock (m_root)
{
index = m_col.Add(item);
}
return index;
}
}
private object m_syncRoot = new object();
public override object SyncRoot
{
get
{
m_syncRoot;
}
}
public int Add(object item)
{
return List.Add(item);
}
public static MyCollection Synchronized(MyCollection col)
{
if (col == null)
throw new ArgumentNullException("The specified collection is null. Can not synchronize a non-existent collection.");
return new MyCollection.MySyncCollection(col);
}
}
|
|
|
|
|
Thank you for your replies friends,
While I am completely agree with your notes, I should say the concept I talked in my post was not a question about using or not using 'this' as the lock object.
That was something interesting that I didn't know up to know and that is grouped locks (with a single lock object) togather that construct composite single critical sections, and creating INDEPENDENT critical sections by assigning different lock objects.
I am excited about this because I didn't knew this before and non of my friends, thought so about lock usage. I posted here to see if anyone else see this interesting and usefull.
---
"Art happens when you least expect it."
|
|
|
|
|
how to download a file from a server using FTP through ASP.NET/C#
|
|
|
|
|
|
Hi,
I have found a C# control that I would like to use my in my commercial application. The control is distributed as a single C# source file which I have included in my project, i.e., my application will not link to an assembly or dll. It is licensed under LGPL or CPL (Common Public License), whichever suits the user (me) best. I would simply like to know if it is ok to do so and what I have to do to comply with the license I choose (e.g. include license terms)?
If there is somebody out there who can give me a quick answer, you can save me a few days trying to understand what those license files you never care to read actually means.
/Johan
|
|
|
|
|
hi . i want to manipulate exe files that when click on exe file before running ,it check some condition
and if it is true the file is run otherwise , the exe file close
thanks.
hdv212@yahoo.com
|
|
|
|
|
Study the PE-file format. www.wotsit.org has some documentation.
modified 12-Sep-18 21:01pm.
|
|
|
|
|
Hello
I'm trying to develop an ActiveX container in C#.
The first thing I would need to do is to create an ActiveX control programatically (CoCreate) and to save it via it's property pages. How can I obtain a pointer to control's IUnknown interface?
Maria Luisa
|
|
|
|
|
Could someone give me an algorithm of a recursive function to return the max key of nodes of a singly connected list?
|
|
|
|
|
Could someone give me an algorithm of a recursive function to display-NOT TO RETURN-the number of nodes of a singly connected list?
|
|
|
|
|
I am probably misunderstanding your question, but any implementation of a List (ArrayList, LinkedList etc) should expose a Count property, and so your question of how to display this is down to where you want to display it.
on the console:
Console.WriteLine(myList.Count);
in a messageBox
MessageBox.Show(miList.Count.ToString());
sorry if ive misunderstood
|
|
|
|
|
This is not a C# question but an algorithm question for my homework at university.
|
|
|
|
|
Perhaps you should do you own homework? You learn a lot more that way. This isn't a difficult question.
|
|
|
|
|
It is absolutely sure that I can not do that, although I have tried very much. Any idea?
|
|
|
|
|
What have you tried? Show people that you are thinking about this and not just too lazy to do your homework and you'll find people are much more responsive.
You need to write a recursive function, something like this (you fill in the blanks):
<code>
public int CountNodes(Node n)
{
if(ExitCondition)
{
return ?;
case?
}
else
{
return ? + CountNodes(?);
}
}
</code>
|
|
|
|
|
while I Agree with wjousts assertion that a) this is not a particularly difficult question and b) you should do your own homework - I will provide some assistance.
You must know what a linked list is, if not go back and refer to your course notes. Recursion you probably also know about - essentially calling a function from itself (or put another way "to understand recursion, you must first understand recursion /geekhumour)
So, to help write this algorithm, I find it easy to start off in pseudo-code
while {not at end of list)
Incrememnt counter
loop
return counter
Now, I know you super-highlight-stressed that you want it DISPLAYED and not RETURNED!!11 (your homework said display it right?) however in order to dispaly something...it must first be returned from somewhere.
Turning the above into a "recursive function" is the bit you've got to do. If this is not enough to get you going on your homework, then seriously consider whether you should be studying a subject you cannot do!
Good luck.
|
|
|
|
|
My English is not good.
But I mean something like that:
int count(POINTER head)<br />
{<br />
return head!=NULL ? count(head->next)+1 : 0 ;<br />
}
But not to return the value. I WANT TO DISPLAY THE VALUE.(and this is difficult)
|
|
|
|