Use your debugger - check the statement, does it make sense, can you execute it via another query tool against the DB?
Likely issues are;
First issue - why are you naming your parameter "@[Order ID]"?
Parameter names should not contain spaces, nor should they use [] brackets. the [] brackets are used when querying columns that contain spaces or reserved words.
Change your parameter name to; @OrderId
Secondly, you may find that AddWithValue is interpreting your value as an incorrect data type, hence your statement ends up as;
SELECT * FROM [Customer Orders] WHERE [Order ID] = '2'
when you actually want
SELECT * FROM [Customer Orders] WHERE [Order ID] = 2
Depending on the database engine you are using this may or may not be automatically converted - MS SQL will normally return correctly but MS Access does not.
Either convert the string value to the correct data type - most likely an integer, or use;
da.SelectCommand.Add("@OrderId", OleDbType.Integer).Value = 2
This will ensure your statement gets correctly created.
Kind Regards