|
Hello everyone:
I want to call MS Picture Manager to view some pictures and do some actions(e.g.
go forward and go back) in my application,but i cann't find any com object about MS
picture manager like PPT.
Help me, thanks~
|
|
|
|
|
I doubt one exists. There's sure no rule that says one has to.
Why not just show the images yourself ? It's kind of trivial.
Christian Graus
No longer a Microsoft MVP, but still happy to answer your questions.
|
|
|
|
|
hi,
i know this is very trivial, but it's the request from my client. so i must do my best to try it.
thanks for your attention
|
|
|
|
|
Why does your client want the picture manager to view it ?
Athrun.Du wrote: so i must do my best to try it.
You will soon learn that part of your job is to educate ignorant clients on what is and is not possible. Offer an alternative ( that you'll write something to show a slide show ). I doubt they want the picture manager for any special reason, they just assume that that's the obvious way to get what they want.
Christian Graus
No longer a Microsoft MVP, but still happy to answer your questions.
|
|
|
|
|
Agree, perhaps this is the only thing i can do
|
|
|
|
|
Sometimes you do stuff because that is what you want. You dont need to justify it....
This does what you want. It assumes you are clicking on a data grid with two columns in a DataTable, the Directory and Filename.
private void dgImages_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
try
{
string sPictureManagerExe ;
string sValue;
int iValue;
string sImageFullPath;
sValue = e.RowIndex.ToString();
iValue = Convert.ToInt16(sValue);
sImageFullPath = _oDt.Rows[iValue]["Directory"].ToString();
if (sImageFullPath.EndsWith("\\") == false)
{
sImageFullPath += "\\";
}
sImageFullPath += _oDt.Rows[iValue]["FileName"].ToString();
sPictureManagerExe = findPictureManager();
sImageFullPath = "\"" + sImageFullPath + "\"";
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo.FileName = sPictureManagerExe ;
proc.StartInfo.Arguments = sImageFullPath;
proc.Start();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private string findPictureManager()
{
const string keyName = "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\ois.exe";
string sValue = (string)Registry.GetValue(keyName,"","NotFound");
return sValue;
}
|
|
|
|
|
I have DataGridView namely datagridview1 with having three columns. Now i want to add rows on DataGridView that is specific to datagridview1.
I don't want to make Generic row and add like
DataGridViewRow row = new DataGridViewRow();
I want to make row that is Specific to my datagridview1.
Thanks in Advance.......
|
|
|
|
|
Piyush Vaishnav wrote: Now i want to add rows on DataGridView that is specific to datagridview1
What is so specific ?
simply add a row :
DataGridView a = new DataGridView();
a.Rows.Add(...); OR a.Rows.AddRange(...); OR a.Rows.AddCopy(...);
Have Fun
Never forget it
|
|
|
|
|
could anybody tell me,
How to load C# dll into the C# program runtime without adding reference to the project.
that means if dll is not present then also project should work.
Thank you.
Truth Is The Simplest !!!!
|
|
|
|
|
Neo Andreson wrote: How to load C# dll into the C# program runtime
Check Assembly.LoadFrom()[^].
Neo Andreson wrote: if dll is not present then also project should work
I am not getting what you meant.
|
|
|
|
|
maybe the DLL encapsulates some features and if not there the application must still work, but the features in the DLL disabled?
Harvey Saayman - South Africa
Junior Developer
.Net, C#, SQL
you.suck = (you.passion != Programming)
|
|
|
|
|
Hi all, it's me again.
I have a xml file. I want to convert there content to a MSWord 2007 file getting some data through a xsl file(style sheet). How can it done in C#.
Any example really helpful.
Thanks
I appreciate your help all the time...
CodingLover
|
|
|
|
|
Do you have the XSL file? If so, use System.Xml.Xsl.XslCompiledTransform. But it will give you HTML, not DOC.
|
|
|
|
|
I don't have xsl file actually.
So I search the web and found a file that xml convert to MS Word 97-2003
It's work fine, but not for word 2007.
I appreciate your help all the time...
CodingLover
|
|
|
|
|
|
|
Hello,
I want to find the location of HTMLControls (button, radiobutton, etc)On web page. I have used webbrowser control in my application. when the web page is displayed on the controls, i just need the exact location of particular htmlControl. how can i find it.
Thanks in advance.
The source code of my application program is :
if (webBrowser1.Document != null)
{
HtmlElementCollection elemColl = null;
HtmlDocument doc = webBrowser1.Document;
elemColl = doc.All;
foreach (HtmlElement e1 in elemColl)
{
if (e1.GetAttribute("Name") != "")
{
string location = e1.OffsetRectangle.Location.ToString();
}
}
but above code gives me the relative position. i want exact location of htmlControls on web page.
|
|
|
|
|
I am reading data from XML like Column Name and Visiblity of column i.e. CheckBox.
And want to Write in DataGridView. DGV having Column name and Visiblity as column.
|
|
|
|
|
If I am understanding your question correctly, then:
You can get the xml data into the datset using DataSet.ReadXML method and set it as the source for the grid.
|
|
|
|
|
Hi all,
I've use a foreach loop to remove some elements from a list. Actually I want to remove selected elements. Here is my attempt.
foreach (int i in View1.SelectedIndices)
{
View1.Items.RemoveAt(i);
}
View1 is my list and it correctly get all selected elements correctly. But when remove elements are removing in odd order. I mean, say I selected 5 elements. My code remove 1st 3rd and 5th elements. Not the 2nd and 4th. Any solution. Is that my foreach loop is incorrect.
Thanks.
I appreciate your help all the time...
CodingLover
|
|
|
|
|
This can't work. Think about it for a minute.
Here are your items:
1
2
3
4
5
Select them all. Now, first iteration, your collection is
2
3
4
5
and now it removes the item at position 2. Because that's the position that was next in the list. So, you get
3
4
5
and so on. Any operation like that, you need to work in descending order, so that the changing order does not break your outcome.
Christian Graus
No longer a Microsoft MVP, but still happy to answer your questions.
|
|
|
|
|
Can you please tell me how can I do it in my code.
I appreciate your help all the time...
CodingLover
|
|
|
|
|
I would imagine if you can get a collection of selected items, and then find the index of each item so you delete that, that will solve your issue. I'd make a copy of it first too, because removing items can cause the selections to be lost, I believe.
The other way is to take the collection of selected indices, and sort if in reverse order, I believe there's sort functions built in for that. You could iterate over such a collection easy enough. Or you could even make a copy and pull indices from the tail end instead of using for each which starts at the front
Christian Graus
No longer a Microsoft MVP, but still happy to answer your questions.
|
|
|
|
|
Thanks sir,
I'll first going to try with the deletion from reverse order as you said. Basically removing the foreach loop. If I'm fail with try to use a duplicate list and work on. I don't like much to use it, because it can use much memory.
I'll let you know what happened.
Thanks.
I appreciate your help all the time...
CodingLover
|
|
|
|
|
The typical solution can be like
for(int selectedItemIndex = View1.SelectedIndices.Count; selectedItemIndex >= 0; selectedItemIndex--)
{
View1.Items.RemoveAt(View1.SelectedIndices[selectedItemIndex]);
}
|
|
|
|