|
There is nothing to implement, Windows does it for you. But it is still a bad idea.
|
|
|
|
|
I ried but getting the following message:
Application attemped to perform an operation not allwoed by the security porlicy. To grant this application the required permission, contact your system administrator or use the Microsoft.NET Framework Configuration tool
Technology News @ www.JassimRahma.com
|
|
|
|
|
That seems quite clear, and even tells you who to talk to about it.
|
|
|
|
|
As you have been told, you can't do it without admin privileges.
But the bigger question remains: why are you writing to the registry?
It's a bad idea: access has been getting more and more restricted (and for good reason, it was heavily abused in the early days) and is not going to get any less restricted in future versions. More restrictions should be expected instead.
So why write there?
Why not use somewhere else - somewhere that you are allowed to write to: Where should I store my data?[^] may help.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
|
class Base
{
[Display(Order = 0)]
public int FirstProp {get;set;}
[Display(Order = 1)]
publuc string SecondProp {get; set;}
}
class Derived : Base
{
[Display(Order = 2)]
public string ThridProp {get;set;}
}
I was expecting that the properties will have an order like this
| FirstProp | SecondProp | ThirdProp |
But I was getting like this
| ThridProp | FirstProp | SecondProp |
What was i missed?
BTW i was binding it in a gridview.
I will appreciate for any help will come.
Thank you
|
|
|
|
|
I'm not familiar with the GridView, but the behaviour looks like its started with fields in the derived class before moving onto the base class. If that's the case, that's a pretty dumb implementation.
|
|
|
|
|
What is your suggestion?
Actually i am just using auto-implemented property and i am not using any fields.
|
|
|
|
|
Gilbert Consellado wrote: What was i missed? Make the properties virtual, override them in the derived class, add the attribute.
Yes, that's more work, but it is also more logical.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Yeah you're right.
But in msdn documentation that DisplayAttribute.Order[^] can change the order of the properties. And i tried it but no success.
|
|
|
|
|
Gilbert Consellado wrote: But in msdn documentation that DisplayAttribute.Order[^] can change the order of the properties. You mean it does not work if you mirror the properties in the derived class?
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
|
I am having an issue, I am getting error The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.
I have a 64-bit Windows 7 machine
32-bit MS Office and my file reader app is targeting .NET framework 4.5 and platform target is ANY CPU.
The references for this app all target ANY CPU as well and if I try to change to x86 I will get errors. Using IIS 7 with Enable 32 bit applications set to False.
Does anyone have suggestions as to how I can resolve this issue?
|
|
|
|
|
|
Thanks I will give this a shot
|
|
|
|
|
Member 9414029 wrote: 32-bit MS Office and my file reader app is targeting .NET framework 4.5 and platform target is ANY CPU.
There's your problem. The Jet driver is 32-bit ONLY. There is no 64-version of it. Since your code is compiled to target AnyCPU and you're running it on 64-bit Windows, it's running as a 64-bit application.
Since you cannot combine 32- and 64-bit code in the same process, your 64-bit application cannot use a 32-bit Jet driver.
Go into your project properties and force the Target Platform to x86 and your code will work just fine.
[EDIT]
The other poster is correct. Use the ACE driver instead. Jet isn't supported any more. The ACE driver can be had in 32- and 64-bit versions.
|
|
|
|
|
Thanks I will try this out
|
|
|
|
|
OUR DEARS,
I like to zoom in or zoom out cell DataGridView according to mouse cell click it is useful for displaying an image specially.
Ihsan
|
|
|
|
|
Okay. That's a requirement. What platform are you targetting?
|
|
|
|
|
OUR DEAR,
I have datagrideview with many columns one of those is image column i like when i click to the one cell of image column display it bigger than it in a cell to be clear i am using c# .
Thank you in advance for your interesting
|
|
|
|
|
"Our dear" is not a common way to address people. In some pubs the line would get you into trouble.
If you want to zoom a picture, do so. Find the event that is fired when a cell is clicked, and write a handler to show a form with a picturebox, pointing to the same picture as the cell that contained it.
I can help if you have a specific question or if you're stuck, but you'll still have to write the code yourself.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
perhaps, instead of zooming you can show the enlarged images in a container (dialog, another panel, enlarged tooltip, ...)
|
|
|
|
|
Hello. I create some panels (on another panel) dynamically and store them in an array. Following is the code for it
m_panels[nCount] = new Panel();
panel1.Controls.Add(m_panels[nCount]);
m_panels[nCount].BackColor = Color.Red;
m_panels[nCount].Location = e.Location;
m_panels[nCount].Size = new System.Drawing.Size(12, 12);
m_panels[nCount].Visible = true;
Following is the code I use for deleting them
for (int i = 0; i < m_panels.Length; i++)
{
if (m_panels[i] != null)
{
panel1.Controls.Remove(m_panels[i]);
m_panels[i].Dispose();
}
}
When I delete the panels, they should be deleted from the array. Instead, I can see them when I add new panels dynamically. Whats wrong here? Thanks for any input.
|
|
|
|
|
You aren't deleting them from the array - you are just deleting (or rather Disposing) the instance - the value in the array doesn't change because the instance it references no longer exists.
Try this:
for (int i = 0; i < m_panels.Length; i++)
{
if (m_panels[i] != null)
{
panel1.Controls.Remove(m_panels[i]);
m_panels[i].Dispose();
m_panels[i] = null;
}
}
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
One of the best arguments for using Generic Lists is that you do not have to deal with explicit re-sizing, and there is no effective way to remove a value from an Array except by re-sizing. Note that it wasn't until .NET FrameWork 3.5 that we had an Array 'Resize method, and that multi-dimensional Arrays cannot be re-sized.
If you re-use the same Array, and add more elements (Panels) in any given re-use, then your Array is going to grow in size, possibly, become "cluttered" as you re-use it.
List<Panel> m_panels = new List<Panel>();
Panel newPanel = new Panel();
newPanel.Name = "panel m_" + i.ToString();
newPanel.BackColor = Color.Red;
newPanel.Location = e.Location;
newPanel.Size = new System.Drawing.Size(12, 12);
newPanel.Visible = true;
m_panels.Add(newPanel);
panel1.Controls.Add(newPanel);
for (int i = 0; i < m_panels.Count; i++)
{
Panel panelToRemove = m_panels[i];
if (panel1.Controls.Contains(panelToRemove))
{
panel1.Controls.Remove(panelToRemove);
}
else
{
throw new MissingMemberException(
string.Format("Panel: {0} in source list of Panels not in panel1.Controls",
panelToRemove.Name));
}
}
m_panels.Clear()
«If you search in Google for 'no-one ever got fired for buying IBM:' the top-hit is the Wikipedia article on 'Fear, uncertainty and doubt'» What does that tell you about sanity in these times?
modified 26-Nov-14 16:23pm.
|
|
|
|