|
After searching long and hard I finally found a way to do it. Makes me wonder why I didn't think of this before.
for ( int i = 0; i < GridContact.Rows.Count; i++ )
{
if ((int)GridContact.Rows[i].Cells[1].Value == ID )
{
GridContact.ClearSelection();
GridContact.Rows[i].Selected = true;
}
}
|
|
|
|
|
After searching long and hard I finally found a way to do it. Makes me wonder why I didn't think of this before.
for ( int i = 0; i < GridContact.Rows.Count; i++ )
{
if ((int)GridContact.Rows[i].Cells[1].Value == ID )
{
GridContact.ClearSelection();
GridContact.Rows[i].Selected = true;
}
}
http://www.c-sharpcorner.com/Forums/Thread/84582/how-to-auto-select-a-newly-added-row-in-the-datagrid.aspx
|
|
|
|
|
static void ClearBoard(out char[,] board)
{
for (int Row = 0; Row < 3; Row++)
for (int Column = 0; Column < 3; Column++)
board[Column, Row] = ' ';
}
board will be passed in and will ALWAYS be of the form char[3,3];
When compiling, I get the error
"The out parameter 'board' must be assigned to before control leaves the current method".
Any idea why?
|
|
|
|
|
An out parameter is expected to be initialized in the called method, just as the error is telling you. If you are passing something in and want the same object returned, then use ref.
I know the language. I've read a book. - _Madmatt
|
|
|
|
|
With any array I don't think ref is required either.
|
|
|
|
|
True, i was speaking generically about the differences between the two
I know the language. I've read a book. - _Madmatt
|
|
|
|
|
Hi,
you don't need out nor ref, as all you are passing is an object, in this case an array of chars. objects get passed by reference, which means both parties (caller and callee) can access the object and modify it.
FYI: without out or ref the callee can not replace the object by a new object (actually, he can, but it will not affect the caller). But that is not what the name of the method implies, when it says ClearBoard it sounds like it is clearing an existing board.
If OTOH the method were intended to create a new and cleared board, I would call it CreateClearedBoard, and the proper way would be to make that the return object, dropping the void attribute.
|
|
|
|
|
performs a binary comparision. this memeber is equivalent to the visual basic constant vbBinaryCompare. what is the equivalent method in C#?
|
|
|
|
|
Seems like it does something comparable to StringComparison.Ordinal .. I'm not too sure though, I don't know VB.
|
|
|
|
|
I suggest you have a look at string.CompareOrdinal()
|
|
|
|
|
Please, I need some idea on how to secure a password string against keylogger spywares installed on a client host.
PLEASE, password input is via the KEYBOARD only.
thanks, ur suggestions will be appreciated.
|
|
|
|
|
You could register a new keyboard hook which doesn't call CallNextHookEx , that's a bit nasty though and it can break hotkeys and other programs (and keyloggers, but that's the point)
If you do this and a keylogger (re-)registers its hook, the keylogger will still work.
Also, it will only work against simple usermode keyloggers.
|
|
|
|
|
I have agridview i fill it from datatable but i want to add new emptyrow af first before filling
|
|
|
|
|
gridview.Rows.add("",""....);
OR
gridview.Rows.add(5);
EASY COME EASY GO
|
|
|
|
|
i tried this
gridview1.Rows.Add();
gridview1.DataSource = ds;
this exception
No row can be added to a DataGridView control that does not have columns. Columns must be added first.
|
|
|
|
|
this exception
No row can be added to a DataGridView control that does not have columns. Columns must be added first.
so what do you think the problem???
how many col in your database?
if 2
then
for example:
gridview1.columns.add("id","id");
gridview1.columns.add("name","name");
then try it
if it did not work try to add them row by row
EASY COME EASY GO
|
|
|
|
|
Thank u sanforjackass
thats help me alot.
|
|
|
|
|
EASY COME EASY GO
|
|
|
|
|
Hi,
I implemented this simple scenario containing 3 assemblies:
- TL (Transport Layer) assembly that contains only one class 'Class1':
public class Class1 : MarshalByRefObject { public int MyProperty { get; set; } }
and one interface:
public interface Interface1 { Class1 Get(int i); }
- BLL (Business Logic Layer) application that will act as a server in my remoting scenario. This assembly has reference to TL assembly and contains 2 files:
BLL Manager:
<br />
class BLLManager : Interface1 { public Class1 Get(int i) { return new Class1() { MyProperty = i - 1 }; } } <br />
And an xml file:
<?xml version="1.0" encoding="utf-8" ?><configuration> <system.runtime.remoting> <application> <channels> <channel ref = "tcp" port = "5001" /> </channels> <service> <wellknown mode = "SingleCall" type = "TL, Interface1" objectUri = "Uri1" /> </service> </application> </system.runtime.remoting></configuration>
The BLL assembly is a Windows Service. In the OnStart method I included the following code:
<br />
protected override void OnStart(string[] args) { RemotingConfiguration.Configure(@"C:\somefolder\BLL\bin\Debug\Config.xml", false); }
I installed this service and started it.
Third assembly is a simple Web application that acts as a .NET Remoting client here; it contains reference to TL as well. This assembly contains config file 'Web.config':
<?xml version="1.0"?>...
<system.runtime.remoting> <application> <client> <wellknown type = "TL.Interface1, Uri1" url="tcp://lsrv01:5001/BLL" /> < </client> <channels> <channel ref="tcp" port="0"/> </channels> </application> </system.runtime.remoting></configuration>
It also contains Default.aspx, which has the following C# code:
<br />
RemotingConfiguration.Configure(@"C:\/*some path*/\Web.config", false); <br />
Interface1 obj = (Interface1)Activator.GetObject(typeof(Interface1), "tcp://lsrv01:5001/BLL"); <br />
var i = obj.Get(5);
However I`m getting RemoteException in the last line. It say: "Server encountered an internal error. For more information, turn off customErrors in the server's .config file." In my web application I modified the web.config file accordingly:
<authentication mode="Windows"/> <customErrors mode="Off" defaultRedirect="GenericErrorPage.htm"> <error statusCode="403" redirect="NoAccess.htm" /> <error statusCode="404" redirect="FileNotFound.htm" /> </customErrors>
But it didn't make any difference. Could you please help me to try to figure out what is wrong in my scenario?
Thank you very much for any useful help.
modified on Friday, April 16, 2010 11:58 AM
|
|
|
|
|
One of the reasons that .NET remoting is no longer used is because even the simplest remoting problem was complex to implement. It took me almost a year to become a remoting expert. Much of the remoting elements within the framework are also Obsolete.
I would suggest you deploy your service as a wcf service, then the rest is a very simple process. In your web application all you need to do is Add Web Service and you are running.
You can host the service in iis or bind it to whatever protocol you want. An advantage of WCF over Remoting is that you control the entire service config with an editor and attributes. You can build new wcf services and bind to them in a day without the headaches you are experiencing. As it is, once I started using WCF I completely let go of all memory of remoting. If you find you need to change protocols or bindings, it is a simple matter of changing attributes without changing any code.
Use WCF and forget about remoting ever existing.
|
|
|
|
|
hey,
ive been thinking for days about how i could go about the following.
1. User selects a sound from their computer.
2. It is loaded into the application.
3. The user presses the execute button.
4. The application adds a sound to the loaded one at recurring intervals of 10 seconds.
5. It is then saved into a user-defined directory with a user-defined name.
I just cannot think of a way to achieve this.
Any help here would be hot
|
|
|
|
|
You might want to have a look at this project then. C# Synth Toolkit - Part I[^] I think it accomplishes what your looking for and then some.
Fear not my insanity, fear the mind it protects.
|
|
|
|
|
TcpClient.cs
namespace TCP_Communication
{
public class TcpClient
{
public delegate void DataArrivalDelegate(char[] data);
public DataArrivalDelegate OnDataArrival = null;
}
}
Program.cs
using System;
using System.Collections.Generic;
using System.Text;
namespace TCP_Communication
{
public class Program
{
static void Main(string[] args)
{
TcpClient Client = new TcpClient();
Client.OnDataArrival = new TcpClient.DataArrivalDelegate(OnDataAvailable);
}
public void DataArrived(char[] newdata)
{
}
}
}
Error:
'OnDataAvailable': cannot reference a type through an expression; try 'TCP_Communication.TcpClient.OnDataAvailable' instead
I'm new to C#.
I read the article in MSDN about C# delegates, but still I can't find what I'm missing.
Can you please help me fix this problem?
Thanks.
|
|
|
|
|
Your handler has to be declared as "static", just like Main().
|
|
|
|
|
Just curiosity, can tell me why does it has to be static?
|
|
|
|