|
1. He was asking for a combo.
2. He was asking in c#.
-- LogWizard Meet the Log Viewer that makes monitoring log files a joy!
|
|
|
|
|
Long story short, you need to implement this yourself.
For Winforms:
1. you need to keep a list of all items (originally found in the combo)
2. look for the text the user types (listed for combo's TextUpdate event)
3. recreate the combo's items, based on what the user typed; very likely, you will need to also "reopen" the combo (that is, set its DroppedDown to true)
Best,
John
-- LogWizard Meet the Log Viewer that makes monitoring log files a joy!
|
|
|
|
|
Thats my Problem, i can't set the items originally in the Combo, i have to fill the Combo while the code is running.
|
|
|
|
|
1. Note: Pankamauria's second solution might work - I have not used it before though.
2. The combo can be emptied and filled while the code is running - that should not be an issue.
Best,
John
-- LogWizard Meet the Log Viewer that makes monitoring log files a joy!
|
|
|
|
|
You have to try
Autocomplete Combobox[^]
Or You can try
this.comboBox1.AutoCompleteCustomSource.AddRange(new string[] {"summer", "sunshine", "Winter"});
this.comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
this.comboBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
Pankaj Maurya
Sr. Software Engineer
Gurgaon, India
|
|
|
|
|
yeah it works
thank you very much!
|
|
|
|
|
your welcome...
Pankaj Maurya
Sr. Software Engineer
Gurgaon, India
|
|
|
|
|
how to call an API in XML in c#
i m working on microsoft visual Studio 2013
|
|
|
|
|
This is not a good question - we cannot work out from that little what you are trying to do.
Remember that we can't see your screen, access your HDD, or read your mind.
And that makes absolutely no sense to me at all..
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
|
Your questions doesn't make any sense at all.
XML is NOT CODE so there is no way to "call an API function" in is.
XML is eXtensible Markup Language used to format data for transmission or temporary storage.
|
|
|
|
|
I've read this question a few times. Each time, I come back to the idea that you are wanting to talk to a web service and what you have at your side is the XML service definition. Is this correct?
|
|
|
|
|
let me tell u in detail
i want to call XML API from OPEN WEATHER website
and then
parse it
and only obtain temperature, humidity and visibilty from there
then all to display in my application
which i have created in C# in MICROSOFT VISUAL STUDIO 2013
it can be displayed in text box , or label etc
and that application
and that i have built is WINDOWS FORM APPLICATION
modified 17-Nov-15 0:13am.
|
|
|
|
|
|
i need to write a program as per the below question
Question : Write a class named Document to represent a document node in a print queue. it should contain a method name that returns the subject of the document and an abstract method called type that returns the document type . from document class derive two concrete classes named word document and pdf document.
just tell me do i need to write the above program with link list ?
how to represent document node ?
here i wrote the code for the above program. just tell me is my code is correct or design as per the above instruction?
code as follows
public class Document
{
public string Subject { get; set; }
public abstract void type();
}
public class WordDocument : Document
{
}
public class PdfDocument : Document
{
}
if i made any mistake then please rectify me. thanks
tbhattacharjee
|
|
|
|
|
Come on now!
Two questions on exactly the same homework?
Give it a try yourself, and see how far you get! You will learn a lot better by trying it than by looking at other code...
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
i need help to construct the code for below program.
here is the question
Another class named Print Queue that is implemented as a linked list of Document objects. Print Queue should have a method named Push for adding a document to the end of the list, a method named pop for removing the first document from the list , and a method named DisplayContents for listing all of the documents in the Print Queue, reporting both the Name and Type of each element Print Queue should not use any standard library classes it should be own implementation of linked list.
i coded the documents class this way
public class Document
{
public string Subject { get; set; }
public abstract void type();
}
public class WordDocument : Document
{
}
public class PdfDocument : Document
{
}
if i made any mistake then please rectify me.
but not being able to code for Print Queue class which will use link list.
see this line too -- Print Queue should have a method named Push for adding a document to the end of the list, a method named pop for removing the first document from the list
stack class has Push and Pop method. so how link list can push and pop.......need idea.
help me to construct the code for above scenario.
thanks
tbhattacharjee
|
|
|
|
|
Start by creating your PrintQueue class - add a private Head variable which is a Document. Add a Next property to your Document class which is also a Document. This allows you to create the linked list.
And add the Push and Pop methods (though I wouldn't call them that myself because "push" and "pop" have specific meanings in computing, and I'd expect a Push followed by a Pop to return the document I Pushed, not the first in the list - I'd use GetHead and AddTail instead myself).
Since this is your homework, I'll not give you the code - it's pretty simple anyway - but for Push, just traverse the list until you find a null value Next, and set your new document there.
For Pop, check if there are any items in the Head, and remove it to a temporary variable, setting the value of Head to the Next value of the Document you removed. Set the Next value of the temporary value to null, and return the temporary value.
I'd suspect that you want the Document class to be abstract as well.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
are you trying to say Document will be like node class in link list.
Document class is a abstract class then how Document class can be a node?
the below code is ok ?
do i need to at all have variable data which return object or Subject property will do the job?
public abstract class Document
{
public Document next;
public Object data;
public string Subject { get; set; }
public abstract string type();
}
tbhattacharjee
|
|
|
|
|
An abstract class can have concrete properties, fields, and methods - it just can;t be instantiated. Which means that is you have this:
public abstract class Document
{
public Document Next = null;
}
public class PdfDocument : Document
{
}
public class WordDocument : Document
{
}
The you can't do this:
Document d = new Document();
Because you can't create an instance of an abstract class.
But you can do this:
Document d = new PdfDocument();
d.Next = new WordDocument();
Because you can create instances of derived concrete classes, and assign them to variables which contain the abstract base class.
It's a bit like cars: Car is an abstract concept, while Ford Fiesta is a specific concrete type of Car, so you can buy one. If you try to go into a dealers and buy "A Car" without wanting any make or model you are going to get some very funny looks...
You probably don't want the Subject to be part of the abstract base class, unless all Document types will definitely have a Subject - and you certainly don't want the content to be party of the base class because you don't know what it is or what it needs to be stored in. (Any more than you'd put the rear passenger seats in the Car class, because that would cause problems with two seaters - which don't have any - and seven seaters - which might have two rows of rear passenger seats, or two "benches" as in an old Landrover.)
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
as you said i wrote the code. you said Start by creating your PrintQueue class - add a private Head variable which is a Document. Add a Next property to your Document class which is also a Document. This allows you to create the linked list.
so i wrote the code like
class PrintQueue
{
private Document head;
public void Push(Object data)
{
Document toAdd = new Document();
toAdd.data = data;
Document current = head;
while (current.next != null)
{
current = current.next;
}
current.next = toAdd;
}
}
public abstract class Document
{
public Document next;
public Object data;
public string Subject { get; set; }
public abstract string type();
}
public class WordDocument : Document
{
public override string type()
{
return "docx";
}
}
public class PdfDocument : Document
{
public override string type()
{
return "pdf";
}
}
this line
Document toAdd = new Document(); giving error because abstract class can not be instantiated.
i failed for this area design as you said For Pop, check if there are any items in the Head, and remove it to a temporary variable, setting the value of Head to the Next value of the Document you removed. Set the Next value of the temporary value to null, and return the temporary value.
just do not being able to write code for Pop function. please help me for pop.
looking for help to complete this code. thanks
tbhattacharjee
|
|
|
|
|
See the answer I wrote to your previous comment.
What part of Pop is difficult?
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
this is my full updated code but still the code is not completed and there is error.
see the code and also read my first post and guide me how to complete the program.
class PrintQueue
{
private Document head;
private int size;
public int Count
{
get
{
return size;
}
}
public void Push(Object data)
{
Document toAdd = new Document();
toAdd.data = data;
Document current = head;
while (current.Next != null)
{
current = current.Next;
}
current.Next = toAdd;
size++;
}
public bool Pop()
{
Document tempNode = head;
Document lastNode = null;
int count = 0;
if (size > 0)
{
while (tempNode != null)
{
if (count == size - 1)
{
lastNode.Next = tempNode.Next;
return true;
}
count++;
lastNode = tempNode;
tempNode = tempNode.Next;
}
}
return false;
}
}
public abstract class Document
{
public Document Next;
public Object data;
public string Subject { get; set; }
public abstract string type();
}
public class WordDocument : Document
{
public override string type()
{
return "docx";
}
}
public class PdfDocument : Document
{
public override string type()
{
return "pdf";
}
}
for this line i will get error
Document toAdd = new Document();
but how could i use there worddoc or pdfdoc class because i do not know which one should use inside in PrintQueue class?
so tell me what is the work around and also see and tell me Pop() function is properly constructed or not ?
thanks
tbhattacharjee
|
|
|
|
|
the 2 questions i was trying to solve as follows
Question 1 : Write a class named Document to represent a document node in a print queue. it should contain a method name that returns the subject of the document and an abstract method called type that returns the document type . from document class derive two concrete classes named word document and pdf document.
Question 2 : Another class named Print Queue that is implemented as a linked list of Document objects. Print Queue should have a method named Push for adding a document to the end of the list, a method named pop for removing the first document from the list , and a method named DisplayContents for listing all of the documents in the Print Queue, reporting both the Name and Type of each element Print Queue should not use any standard library classes it should be own implementation of linked list.
here i like to post whatever at last i achieved. so please see the code and question let me know is it correct as per the 2 question pasted here.
see the latest code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace PrintQueueDemo
{
class PrintQueue
{
Node head;
Node tail;
public void Push(string strType, string strName)
{
if (head == null)
{
head = new Node(strType, strName);
tail = head;
}
else
{
Node node = new Node(strType, strName);
tail.setNext(node);
tail = node;
}
}
public Node.Document Pop()
{
if (head == null)
return null;
Node.Document doc = new Node.Document(head.document.Type, head.document.Name);
head = head.nextnode;
if (head == null)
tail = null;
return doc;
}
public string DisplayContents()
{
string content = "";
Node node = head;
if (node == null)
return "PrintQueue is empty";
content = node.document.Name + ": " + node.document.Type;
while (node.nextnode != null)
{
node = node.nextnode;
content += "\r\n" + node.document.Name + ": " + node.document.Type;
}
return content;
}
public class Node
{
public Document document { get; private set; }
public Node nextnode { get; private set; }
public Node(string strType, string strName)
{
document = new Document(strType, strName);
}
public void setNext(Node node)
{
nextnode = node;
}
public class Document
{
public string Type { get; private set; }
public string Name { get; private set; }
public Document(string strType, string strName)
{
Name = strName;
Type = strType;
}
}
}
}
}
PrintQueue pq = new PrintQueue();
pq.Push("cpp", "main.cpp");
pq.Push("c#", "main.cs");
pq.Push("c", "main.c");
pq.Push("h", "myinclude.h");
Console.WriteLine(pq.DisplayContents());
Console.WriteLine("===");
PrintQueue.Node.Document doc;
doc = pq.Pop();
Console.WriteLine("{0}: {1}", doc.Name, doc.Type);
doc = pq.Pop();
Console.WriteLine("{0}: {1}", doc.Name, doc.Type);
doc = pq.Pop();
Console.WriteLine("{0}: {1}", doc.Name, doc.Type);
doc = pq.Pop();
Console.WriteLine("{0}: {1}", doc.Name, doc.Type);
Console.WriteLine("===");
Console.WriteLine(pq.DisplayContents());
Console.WriteLine("===");
pq.Push("xls", "workbook.xls");
Console.WriteLine(pq.DisplayContents());
just tell me the above code will be accepted as per 2 question which i pasted at top. thanks
tbhattacharjee
|
|
|
|
|
No.
From a personal POV, I wouldn't use a tail unless I really had to - it complicates things, and it far to easy to mess it up. I'd traverse the list (or actually use a Queue rather than a linked list anyway).
But...
Why are you returning a new node on Pop? What's wrong with the actual node? Why waste time creating a new one, when it may not be the same as the original in all respects?
Why do you have a public nextnode property and a setNext method? Dump the method and make the setter public as well.
If you are going to use XML comments (and it's a good idea) use them consistently: i.e. every public object should have a "proper" comment.
What happened to the abstract Document class?
Why does your test code not check for nulls? There is no point in returning null for an error if you don't check for it anywhere!
Why do it like this:
content = node.document.Name + ": " + node.document.Type;
while (node.nextnode != null)
{
node = node.nextnode;
content += "\r\n" + node.document.Name + ": " + node.document.Type;
} Try changing it round:
while (node.nextnode != null)
{
content += node.document.Name + ": " + node.document.Type + "\r\n";
node = node.nextnode;
} Or better, use a string builder:
public string DisplayContents()
{
StringBuilder content = new StringBuilder();
Node node = head;
while (node != null)
{
content.AppendFormat("{0} : {1}\n", node.document.Name, node.document.Type);
node = node.nextnode;
}
return content.ToString();
}
And why is Document a part of Node? Is there a good reason? I can see why you might want them to be separate classes, but...
If Node inherited from Document that would make sense, or even if Document inherited from Node - but making it an encapsulated class feels very wrong, and complicates your code.
I'd probably make Node an abstract class, and inherit an abstract Document from that, then inherit the concrete PdfDocument and WordDocument you were using previously from there.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
modified 15-Nov-15 7:57am.
|
|
|
|