|
This isn't a web app. There's no replacement for "~" outside of a web app.
It's always best to use fully qualified filepaths, even if you have to build them from a known folder, like this:
string DesktopFolder = Environment.GetFolderPath(SpecialFolder.Desktop);
.
.
.
string imagePath = Path.Combine(DesktopFolder, "folobiz\\school\\Images\default.jpg");
|
|
|
|
|
Thank you for your kind replay
|
|
|
|
|
As Dave replied, that particular notation is reserved for web-apps. You can write a short method that replaces the "~" character with the path of the running executable, similar to this;
public static string ToRelativePath(string source)
{
return source.Replace("~",
System.IO.Path.GetDirectoryName(
System.Reflection.Assembly.GetEntryAssembly().Location));
}
I are Troll
|
|
|
|
|
Use AppDomain.CurrentDomain.BaseDirectory
|
|
|
|
|
I have written an app for a client in VB.Net that prints prices etc to specific labels using a Zebra label printer.
All the "coordinates" and data for each item that has to be printed is written in a file and then that file gets printed by using the command line "print c:\sample_file.extension" command.
This works perfectly from within their office. Their is one user that remote desktops into the office. This does not work for this user as the print command send the data to the LPT1 port of the host machine (in this case the server).
Is there any way to get the same functionality for the remote user?
|
|
|
|
|
Probably the easiest way to do this would be to install the printer driver on his machine (while making sure that he is logged in to the office, so the printer is visible), then sending the file as raw data to the printer.
Microsoft has a web page dedicated to doing this, but it is in C#
http://support.microsoft.com/kb/322091[^]
|
|
|
|
|
Hi:
I’m working through trying to design some intelligent paging into a system I’m building.
The basic 10,000 ft view of what I’m doing is listed below. This is all being done in a .Net
Windows app.
The basic premise is a ton of data on the backend which will be queried and displayed
in some meaningful fashion in the UI. Clearly we don’t want to load everything into the apps
memory in one fell swoop. I want to minimize the in-memory dataset by paging in/out what’s
currently needed. The “paging” really has to exist between the DB’s & in memory datasets.
That’s where performance/usability will be most affected.
Currently the front end is .Net/winforms based, making use of Infragistics winform controls
(particularly the UltraGrid). Eventually, we'll be migrating to a WPF implementation.
Some paging will/should probably occur between the in-memory data sets and the UI controls.
Grids will show actual records/rows but only have N rows visible at a time.
Other visualizations will display the results of some aggregation of the data.
There will ultimately have to be some paging requests get initiated as the “viewport” of data
moves at bequest of the UI.
I realize that this is not an easy problem to solve. But if I do it right, I should be able to come
up with a highly effective reusable design pattern here. I’m guessing that some design patterns
must already exist out there.
There's got to be a couple of design patterns out there for this.
What’s the best way to proceed with this?
How big of a PIA/whale am I ultimately tackling here?
I can provide a jpeg of a quick 10,000 ft schematic of what I'm trying to do.
I know this won’t be trivial.
Thanks,
JB
|
|
|
|
|
You're definitely not the first person to tackle this. You can gleen some ideas from these[^].
|
|
|
|
|
johnbMA wrote: What’s the best way to proceed with this?
Search MSDN; came across this[^] yesterday, looks similar to what you're trying to achieve.
johnbMA wrote: How big of a PIA/whale am I ultimately tackling here?
There aren't many article's on CP on the subject.
I are Troll
|
|
|
|
|
Hi!
I've localized my application to languages like English_US,Chinese_Simplified,Chinese_Traditional,Thai,Greek,Spanish,Japanese.
I've added these languages to a list box. I've get currently selected from the list and uses it to get the culture info. I've also set different font's for the form according to the list selection(Why because languages like Chines,Japanese and Korean were not displayed with out the corresponding font). Here's the code:
switch(listIndex)
{
case 0:
cultureCode = "en-US";
this->Font = System::Drawing::Font(L"Microsoft Sans Serif",8);
break;
case 1:
cultureCode = "zh-CN";
this->Font = System::Drawing::Font(L"Simsun",8);
break;
case 2:
cultureCode = "fr-FR"
this->Font = System::Drawing::Font(L"Verdana",8);
break;
default:
}
System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo("cultureCode");
System.Threading.Thread.CurrentThread.CurrentCulture = ci;
System.Threading.Thread.CurrentThread.CurrentUICulture = ci;
My problem is:
(i) size of my form shrinks when I select any language other than English. This doesn't happen always. If I set the font through code as above, the size of the form shrinks. If I didn't set the font through code, Chinese,Japanese and Korean languages can't be displayed. What to do to display these languages as well as to keep the form size constant?
(ii) Which font is required to display Korean language?
modified on Thursday, March 31, 2011 1:19 PM
|
|
|
|
|
A Windows form has the properties AutoSize and AutoSizeMode . You can set AutoSize to false to prevent any size changes, or AutoSizeMode to GrowOnly to allow for a growing form.
|
|
|
|
|
Hi!
Thanks for the reply. Setting the font is not enough to display Chinese Text over Title Bar of the form(Caption of the Form). Every language Text is displayed properly else where except the Caption of the Form. What to do to dispaly Chinese Text over the caption of the form?
|
|
|
|
|
I've noticed one problem with the code snippet.
System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo("cultureCode");
Looks like it should be
System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo(cultureCode);
Also the way I've handled globalisation is by using resource files and letting the system's culture determine which resource file to use. You might want to Read these MSDN articles
"You get that on the big jobs."
|
|
|
|
|
Hi!
I've added an ShockwaveFlashObject inside my Windows Form. I've used the following code to run an SWF file:
this->axShockwaveFlash1->BringToFront();
this->axShockwaveFlash1->Movie::set(gcnew System::String(StringToWString(spath).c_str()));
this->axShockwaveFlash1->Play();
This code is inside the form load event. But when I run the application, the movie is not playing. What to do to run the swf file from Windows forms?
|
|
|
|
|
I would suspect it doesn't play because the form hasn't been shown yet and may not have a window handle.
Put a button on the form and move the play code to the Click event of that button. Try that and see what happens.
|
|
|
|
|
Now also the same thing. What to do to run the SWF file? I've also added a split container to the form. Is that may be cause for this problem?
|
|
|
|
|
Not unless you put the player behind the panels of the player instead of IN one of the panels.
|
|
|
|
|
Hi!
Can you tell me if any thing else has to be done in the coding part to run a SWF file from windows forms?
|
|
|
|
|
Nope, you've already done it all.
|
|
|
|
|
Works OK on my laptop system.
I must get a clever new signature for 2011.
|
|
|
|
|
1. Yes and Yes.
2. I have no Tweak-UI or similar, this is just a standard Windows 7 system.
I must get a clever new signature for 2011.
|
|
|
|
|
I have a winform application that opens other winform objects I need to limit these new winform objects to one instance. I understand mutexes but don't know what to override in the winform object to limit it to a single instance.
|
|
|
|
|
if it is all about forms in a single application, why can't you keep a count and organize things the way you want? I don't see the need for mutexes here.
if it is about limiting the number of instances of a specific app, then that is where a mutex would come in. Search this site for "single instance application", you will find lots of articles (language doesn't matter, the principles are the same everywhere), some are good.
BTW: none of them really limit the apps to one, all they do is have the extra instances close as soon as possible, however they do open first...
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
|
|
|
|
|
Your right the mutex is over kill what I need to know is which method to override in order to close the child winform objects. I'm new to the dot net platform and still learning.
|
|
|
|
|
I still sense some confusion. You can close a modeless form (that is one shown through Show() as opposed to a modal dialog, which gets shown by calling ShowDialog() ) by calling its Close() method, no need to override anything.
However, if you want to limit the number of open windows, why not just NOT open them, rather than closing them once you decided they are too many?
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
|
|
|
|