For beginning: www.amazon.com/Beginning-DirectX-11-Game-Programming/dp/1435458958/
I have not read this book, but in the past, I have read some of the books in this series that are good. The other book was great, so I guess that would be too. Although it is in the same series of books, it has a different author, so I could be wrong about it being good.
Go through some tutorials on windows programming before you move into directx, you at least have to know how to set up a WinMain(), how to make a window appear, and how to use windows messages (WM_KEYDOWN, WM_LBUTTONDOWN, WM_TIMER, etc). I've only gone through a couple directx tutorials online, but they all at least show you the very basics of WinApi before moving into directx, so the book should do so as well.